The JFrog Container Registry is a repository manager, which supports Docker and Helm registries and Generic repositories, allowing you to build, deploy and manage your container images while providing powerful features with fine-grained permission control behind a sleek and easy-to-use UI.
JFrog Container Registry is available as a self-hosted (Freemium) or SaaS solution and supports private and public Docker images, Helm Charts, and Generic repositories. The internal permission mechanism helps DevOps teams decide who can access what with fine-grained access control. It provides visibility and management of your Images with advanced querying based on metadata and allows you to run multiple registries per instance/account.
JFrog Container Registry comes with an Easy to Use UI with an Advanced Image Layer View and images search capabilities. A powerful REST API and CLI can be used to push, pull, and easily manage your images.
JFrog Container Registry Documentation
The JFrog Container Registry is powered by JFrog Artifactory with a set of features that have been customized to serve the primary purpose of running Docker and Helm packages in a Container Registry.
As JFrog Container Registry is a version of Artifactory, refer to the JFrog Artifactory documentation when working with JFrog Container Registry. For example, Configuring Artifactory, Installing Artifactory, Upgrading Artifactory, and Artifactory Release Notes.
Tip: View All Pages Relevant to JFrog Container Registry
To view the full list of pages supported by JFrog Container Registry, type jfrog_container_registry in the search bar in the left panel.
To view a list of supported JFrog Container Registry features, see the JCR Functionality Table and to compare JFrog Container Registry with other versions, see the Self-Hosted JFrog Platform Comparison Matrix or the Cloud JFrog Platform Comparison Matrix depending on your needs.
Try JFrog Container Registry
Hybrid and Multi-Cloud Environments
You can host JFrog Container Registry on your own infrastructure, in the Cloud, or use the SaaS solution providing maximum flexibility and choice.
Dedicated Docker Registry
You can set up a secure private Docker registry in minutes to manage all your Docker images while exercising fine-grained access control. JFrog Container Registry places no limitations and lets you set up any number of Docker registries, through the use of local, remote and virtual Docker repositories, and works transparently with the Docker client to manage all your Docker images, whether created internally or downloaded from remote Docker registries such as the Docker Hub. To start configuring your Docker registry, see Configuring Docker Repositories.
Dedicated Helm Registry
JFrog Container Registry natively supports Helm registries, giving you full control of your deployment process to Kubernetes. It supports proxying remote Helm registries, deploying Helm Charts to local repositories and, of course, using a virtual repository to aggregate all those Helm Chart repositories so you can access them through a single endpoint.
The Helm package search in JFrog Container Registry is customized to allow users to search for Helm repositories by “App version” and not only by “Version”, which refers to the Chart version. App Version is a useful piece of information as it lets your users know what version of your app they are using, as the chart version could differ. You can search for the parameter after you add it to the Chart.yaml file. For more information, see Helm Registry.
JFrog Container Registry supports Generic repositories that are not associated with any particular package type and can be used to upload packages in any format. Generic repositories do not maintain separate package indexes, because they are not specific to any package type. They are useful when you want to proxy unsupported package types, store installers, navigation files, audio files, etc.
Local, Remote and Virtual Repositories
You can start managing your container images by setting up Local repositories that are physical, locally-managed repositories. Typically these are used to deploy internal and external releases as well as development builds, but they can also be used to store images that are not widely available on public repositories such as 3rd party commercial images.
Remote repositories allow you to set up a caching proxy for external registries such as the Docker Hub. Artifacts are stored and updated in remote repositories according to various configuration parameters that control the caching and proxying behavior. You can even set up your remote repository as a Smart Remote Repository to proxy a local or remote repository from a different JFrog Container Registry, essentially caching all distant repository content inside your own JFrog Container Registry instance. Smart remote repositories are especially useful when changes are made to the original container image, e.g. when its properties are changed or when it is deleted.
Virtual repositories encapsulate any number of local and remote repositories and represents them as a unified repository accessed from a single URL. It gives you a way to manage which repositories are accessed by developers since you have the freedom to mix, match and modify the actual repositories included within the virtual repository.
Multiple Container Registries
Useful for separating teams/projects and for promoting images from one environment to the next (Development, Staging, and Production).
Container Registry Functionality
The following table lists the JFrog Container Registry functionality and supported tools.
Basic artifact management
Working with CI servers
Integrated with JFrog CLI
Self-hosted advanced storage system
Cloud dedicated features
SaaS-based Maintenance-free Hosted Repository
Always up-to-date JFrog Container Registry Version
Setup Free Automated Backups