Sell your software as Docker images

Give every customer their own registry login, limited to the versions their license covers. When a license ends, their pulls stop.

30-day free trial, no card needed · Unlimited products on every plan

Pulls of acme/server
  • Initech Allowed
    acme/server:2.4.1 Enterprise license covers v2.*
  • Globex Refused
    acme/server:3.0.0 3.0.0 is outside v2.*
  • Umbrella Health Allowed
    acme/server@sha256:9f2c41 Digest of 2.4.0, which the license covers
  • Vandelay Refused
    acme/server:2.4.1 License ended 30 Sep 2026

Push

Push images, Helm charts and OCI artifacts to registry.breakwaterapp.com, or connect the registry you already run.

License

Give each customer a license for a product, a tag pattern like v2.*, and an end date.

Pull

Customers sign in, copy their own docker login, and pull. Every pull is checked and recorded.

Stop managing access by hand

Most vendors start with one registry password shared with every customer, and a spreadsheet of who should still have it.

Today With Breakwater
One registry password for every customer A credential for each customer, scoped to what they bought
Rotating that password when a customer leaves Access ends with the license, automatically
Every customer can pull every version Tag patterns limit each license to the versions it covers
No record of who pulled what Every pull recorded by customer, product and tag
Customers email you for credentials Customers sign in and create their own

Built for selling software in containers

License keys

Each license can issue a signed key your app checks, offline if it has to. Revoke a license's keys and they stop passing status checks.

Versions by plan

Enterprise customers get v2.*, Starter stays on v1.*. Signatures and SBOMs travel with your images under the same license rules.

A portal for customers

Customers see their licenses, the tags they can pull, and the docker login command to copy.

Every pull on record

Who pulled which tag and when, by customer and product, and an audit log of every change your team makes. Included in the Growth and Scale plans.

Hosted or your own

Use Breakwater's registry and skip the infrastructure, or put Breakwater in front of the one you run.

SSO for your team

Your team signs in with OIDC or SAML, and SCIM removes people the day they leave. On the Growth and Scale plans.

A portal for sales and support

Your team manages customers, licenses and credentials in the browser. Nobody needs the command line to extend a trial.

  • Add customers and give them licenses
  • Extend, end or cancel a license in one step
  • Revoke a customer's credentials immediately
  • See pull activity by customer, product or tag
Take the product tour
Ledgerline's vendor dashboard: products, customers, active licenses and tokens, with pull usage for the last 14 days and the top customers and repositories.Ledgerline's vendor dashboard: products, customers, active licenses and tokens, with pull usage for the last 14 days and the top customers and repositories.

Connects to the systems you run

Create customers and licenses from your billing system with the REST API. Webhooks tell your other systems when a tag is pushed, a license starts or ends, or a token is revoked.

# A new customer bought v2 for a year
$ API=https://app.breakwaterapp.com/api/v1/vendor
$ curl -H "Authorization: Bearer $BREAKWATER_API_TOKEN" \
    "$API/customers/cust_7hx2k9mq4r8a/licenses" \
    -H "Content-Type: application/json" \
    -d '{"license": {"product_id": "prod_3fz8w2n6p9kd",
                     "tag_pattern": "~> 2.3",
                     "expires_at": "2027-11-29"}}'

{"data": {"id": "lic_q8m4t2x9w6ze", "tag_pattern": "~> 2.3", ...}}

Before you try it

Do I have to move my images?
No. Push them to Breakwater's hosted registry, or put Breakwater in front of the registry you already run.
What changes for my customers?
They sign in to their portal, create a token and run docker login with it. After that, docker pull works as it always has.
How much setup is there?
Create a product, push an image, and give your first customer a license. It's a few forms and one docker push, and on the hosted registry there's nothing for you to run.
My customers share one password today. Now what?
Move them one at a time. Give each customer a license and let them make their own token, then retire the shared password once the last one has switched.
More questions

One price, however many customers you sell to

Pricing per customer costs more every time you make a sale. Breakwater's plans are priced on storage, bandwidth and features, not per customer: Starter includes 25 customers, Growth 100, and Scale as many as you need.

Plans from

$60 /month

Compare plans

Start with your first customer

You don't need a platform team to sell containerized software. Try it free for 30 days, no card needed, with no registry to set up.

Built and run by the team behind Honeybadger.