3

GitHub offers two options for storing container images as I understand it: Container Registry and Packages, but I think the difference is not clear. In a blog post, they say "With GitHub Actions, publishing to GitHub Container Registry is easy." but the given example pushes images to Packages, not Container Registry.

So, can those two platforms be used interchangeably and does one have an advantage over the other?

Emre
  • 933
  • 15
  • 27
  • 2
    A few things are also mentioned here: [Migrating to GitHub Container Registry for Docker images](https://docs.github.com/en/packages/guides/migrating-to-github-container-registry-for-docker-images#key-differences-between-github-container-registry-and-the-docker-package-registry), check the "Key differences between GitHub Container Registry and the Docker package registry" part. – tgogos Feb 16 '21 at 11:38

2 Answers2

5

As already stated by tgogos the GitHub docs guide on Key differences between GitHub Container Registry and the Docker package registry tells us:

The GitHub Container Registry supersedes the existing Packages Docker registry and is optimized to support some of the unique needs of containers.

TLDR; The GH Container Registry will replace the Packages Docker Registry. It also focusses more on the GitHub organization level then on a single repository. So you find your container images on the account level for example - and have to link them optionally later to a repository if needed. Additionally it features anonymous access to Docker images (see the GHCR intro post here).

jonashackt
  • 12,022
  • 5
  • 67
  • 124
1

I guess the reason they are migrating is that they want to cut that name 'Docker' from the registry. The reason being 'Docker' is just another technology for creating images however you can use other CRI (Container Runtime Images) like cri-o, rkt, container-D. These are CNCF active projects. And down the line, container-D might replace the Docker completely as its popularity has increased a lot over the years. AWS ECS has started using the agent based on container-D in their ECS Instances, Kubernetes has stopped supporting Docker as default CRI from v1.22.

So GitHub wants their customer to use the term 'container' (which could be anything as it is generic) rather than just 'Docker' in the future.

Dharman
  • 30,962
  • 25
  • 85
  • 135
vinod827
  • 1,123
  • 1
  • 21
  • 45