Repositories
Repositories are where your Docker images live. They correspond to Docker registry repositories and contain the actual container images that customers pull.
What is a Repository?
A repository in Breakwater maps directly to a Docker registry repository. When you push an image like:
registry.breakwaterapp.com/acme/webapp:v1.0
The repository name is webapp, and it belongs to the vendor acme.
Creating a Repository
- Navigate to Repositories in the vendor portal
- Click New Repository
- Enter the repository details:
- Name (required): The repository name
- Products: Select which products this repository belongs to
- Click Create Repository
Repository Names
Repository names must follow Docker naming conventions:
- Start with a lowercase letter or number
- Contain only lowercase letters, numbers, dots (
.), underscores (_), hyphens (-), and slashes (/) - Use slashes to separate segments (each segment must start with a lowercase letter or number)
- Be unique within your vendor account
Valid examples:
- webapp
- my-app
- myapp_enterprise
- app.v2
- platform/api
- team/tools/webapp
Invalid examples:
- MyApp (uppercase not allowed)
- -webapp (can't start with hyphen)
- my app (spaces not allowed)
- webapp//api (empty segment)
Full Image Path
The complete path to pull or push an image is:
registry.breakwaterapp.com/{vendor-slug}/{repository-name}:{tag}
For example, if your vendor slug is acme and your repository is webapp:
registry.breakwaterapp.com/acme/webapp:latest
registry.breakwaterapp.com/acme/webapp:v1.0.0
Linking to Products
Repositories must be linked to at least one product for customers to access them through licenses. When creating or editing a repository, you can select multiple products.
How access works:
- A customer has a license for "Product A"
- "Product A" is linked to the
webapprepository - The customer can pull images from
webapp(subject to license dates and tag patterns)
A repository can belong to multiple products. This is useful when:
- Multiple product editions share common components
- You want to grant access to the same images through different licensing tiers
Managing Repositories
Viewing Repositories
The Repositories page lists all your repositories with:
- Repository name
- Full image path
- Linked products
Click on a repository to see:
- Repository details
- Linked products
- Recent pull history for this repository
Editing Repositories
- Click on the repository to view details
- Click Edit
- Update the linked products
- Click Update Repository
Note: You cannot change the repository name after creation, as this would break existing image references.
Deleting Repositories
- Click on the repository to view details
- Click Delete
- Confirm the deletion
Deleting a repository removes it from all linked products. Customers will no longer be able to pull images from this repository. Existing images in the registry are not affected.
Pushing Images
Use a vendor auth token to push images to your repositories:
# Log in with your vendor token
docker login registry.breakwaterapp.com -u vtok_xxxxx
# Tag your local image
docker tag myapp:latest registry.breakwaterapp.com/acme/webapp:v1.0.0
# Push to the registry
docker push registry.breakwaterapp.com/acme/webapp:v1.0.0
See Auth Tokens for details on creating vendor tokens.
Best Practices
Repository Organization
- One repository per image: Each distinct container image should have its own repository
- Consistent naming: Use a consistent naming scheme across repositories
- Separate concerns: Don't mix unrelated images in the same repository
Tagging Strategy
Choose a tagging strategy that works with tag patterns:
- Semantic versioning:
v1.0.0,v1.0.1,v2.0.0 - Date-based:
2026.01,2026.02 - Named tags:
stable,latest,lts
Consider how customers will want to pin to specific versions or receive updates.
Multiple Products, Shared Repositories
If multiple products share the same base images, you can:
- Create separate repositories for shared and product-specific images
- Link shared repositories to all relevant products
- Use tag patterns on licenses to differentiate access levels