GitHub Packages Container registry is generally available

Image of Nilofer Rajpurkar

Last year, we introduced the Container registry to GitHub Packages and saw developers utilize it as a way to publish, manage, and consume containers on GitHub. In fact, since its release there have been many millions of downloads occurring each day. Throughout the beta, we added features to improve the experience of using the Container registry. Today, we’re excited to announce that the Container registry is generally available as part of GitHub Packages!

Text that reads "GitHub Packages - your packages, at home with their code" with a list of registry types: Container registry, RubyGems registry, npm registry, Apache Maven registry, Gradle registry, NuGet registry

Creating a great container experience

The Container registry adds capabilities to GitHub Packages for you and your organizations to work with containers effectively in your development. Since introducing the beta, we incrementally released and shared some additional features for Container registry. Here’s your full wrap-up of all you can take advantage of:

  • Anonymous access for public containers
  • Organizational level ownership of containers
  • Fine-grained permissions control for containers
  • Container-specific landing pages full of useful information
  • Container visibility independent from repository visibility
  • Internal visibility settings for containers within organizations
  • Secure and seamless access to containers from Actions workflows via the GITHUB_TOKEN
  • Clean starter workflows to publish directly to Container registry at ghcr.io

A new home for your Docker containers

As a part of Container registry becoming generally available, we are consolidating the Docker registry into Container registry. If you have previously published Docker containers to docker.pkg.github.com, you will see them automatically migrated to the Container registry in the coming weeks. Your existing containers now have access to all the additional features listed above! Fear not — existing pull links and references to docker.pkg.github.com will continue to work without any hiccups.

At this time, usage of the Container registry will continue to be free. Billing for Container registry usage will begin in the coming months with ample notice as to when that change will occur. Container registry pricing for storage and bandwidth will follow the standard GitHub Packages pricing structure.

Don’t just take our word for it

Many developers and organizations have started using the Container registry as a part of key workloads. We’re excited to highlight a few stories of how developers are turning to the Container registry to solve their needs.

Homebrew now hosts all of their bottles on the Container registry. This was made possible because the Container registry supports OCI images. Homebrew can now distribute over a half a petabyte of binary packages to their users every month while surfacing them in GitHub search for improved discoverability. Shaun Jackman, a Homebrew maintainer, found the OCI support particularly useful and said, “GHCR’s implementation of ORAS/OCI provides a standard API to query, upload, and download binary artifacts, so that Homebrew could use off-the-shelf compatible tools, easing our migration of bottle storage to GHCR.”

Home Assistant has moved all of their worldwide installations to the Container registry. Their latest image has been downloaded over 500 million times and service stability was a critical consideration. Per Pascal Vizeli, Home Assistant Operating System maintainer, “For Home Assistant, the new Container registry is a perfect fit for our DevOps landscape. It reduces maintenance by keeping it all together: source-code, build, and distribution. It’s now easier than ever before. Everything is in one place and can be administered via the Github organization as an all-in-one solution.”

The ease of publishing and managing container images so closely with other GitHub workflows is echoed amongst developers, including those at The Helm Project working on Tiller. Per Matt Farina, Helm maintainer, “When the Helm project was looking for a new container registry for Tiller, GHCR quickly became the top choice. It enabled us to manage our container images right alongside our source code. Moving to GHCR simplified our management setup and infrastructure sprawl.”

Check out Container registry

We’re excited to see how developers take full control of their containers by using the Container registry. You can learn more about GitHub Container registry in our documentation.

For any questions, please visit the GitHub Packages community.

To see what’s next for GitHub Packages, visit our public roadmap.