Configuring Container Registry Connection
Introduction
Mosaic Hosting Service supports provisioning of infrastructure and deployment of customized services through the Administration Portal with a few clicks, eliminating the hassle carrying out the deployments manually.
When performing the deployment task, the Hosting Service needs to be provided with the Docker image that needs to be deployed. The image is retrieved at deployment time from a given container registry, according to the repository and image tag that is given when creating the deployment.
As a pre-requisite, the Administrators must configure the Hosting Service to use the desired Container Registry that will be used to pull the container images from. This is a one time configuration that is done per environment.
Mosaic supports any container registry which conforms with the Docker Registry HTTP API V2 specification. (https://docs.docker.com/registry/spec/api/#docker-registry-http-api-v2)
Use of the Container Registry Connection
Hosting Service uses the configured container registry connection at two points.
- The Container Images explorer station uses the configured container registry connection to retrieve the relevant image tags, from the repository defined for the respective Customized Service.
- When the deployment process starts, a fully qualified
image name (FQIN) is constructed using the configured container registry connection and
the image tag to the format of:
hostname/username/reponame:tag
. i.e.:registry.hub.docker.com/mosaicuser/media-repo:20230723.1
This fully qualified container image name is then used to pull the image while doing the deployment.
Configuration of the repository is done when creating a new Customized Service in Hosting Service. Please refer to How to Deploy a Customized Service with Hosting Service document to understand how the container registry repository can be configured.
Configuring a Container Registry Connection
Navigate to the Hosting Service configuration and click on the Container Registry button.
Hosting Service Configuration
This will take the user to Container Registry Details station where the Container Registry information can be set. The values that needs to be set are as follows.
- Registry Host - The host of the container registry. For example, if Docker
Hub is being used as the registry, the host would be
registry.hub.docker.com
. - Username - A user that has Read/Pull rights on the container registry.
- Password - The password for the above user.
Save the values to complete the configuration.
When a user updates an already existing Container Registry, if a deployment has already been done using an image in that Container Registry, the deployment will continue to use the older container registry connection, which might result in non-deterministic downtimes. It is recommended to always redeploy the services after updating the Container Registry Connections This will cache the new container registry connection and avoid any undesired states.
Container Registry Connection