Dedicated container registries
The CNCF’s Cloud Native Landscape, a comprehensive overview of cloud native projects and products, has a list of all notable container registry tools. Looking at our choices, we have 5 open source projects:
- Distribution (Docker Registry)
- Dragonfly
- Harbor
- Kraken
- Quay
Distribution is best in minimal set ups where you don’t need anything beyond basic container registry capabilities.
You should consider Harbor or Quay when you need additional features for managing image access, security, monitoring, etc. Harbor is a graduated CNCF project, while Quay is not. Harbor seems to be more popular and more mature, enjoying more features than Quay.
If Quay or Harbor are overkill and you only need a GUI and an authentication system in front of your registry, you could use Portus to complement your docker registry. Beware, Portus seems to no longer be under active development.
Kraken and Dragonfly are P2P distribution solutions, so you probably don’t need them unless you are already facing bottlenecks with Quay, Harbor or Distribution. Kraken itself seems to be a stand-alone solution, while Dragongly complements Harbor.
General purpose package registries
If you don’t need anything special in terms of container registries, git hosting software often feature package registries; You can use gitea or gitlab to host container images if you already self-host