Set Up Custom Image Registry
This article explains how to set up a custom image registry for installing or upgrading Release Runner. A custom image registry can be either public (not password-protected) or private (password-protected).
The xl kube command provides an option to choose between a default, custom public, or custom private registry through the prompt Select type of image registry:.
Follow these steps to manually pull the Release Runner image to your registry.
Step 1: Get the Required Image
Ensure the following Release Runner image is available in your custom registry repository for the version you are installing:
docker.io/xebialabs/release-runner:<version>
For the available image versions, see the Release Runner tags on Docker Hub. Ensure that the version you use is supported to avoid issues during install or upgrade.
Step 2: Pull and Push the Image to the Custom Image Registry
Before pushing a Docker image to a registry, ensure that you are logged in to the Docker registry.
For example, to push the release-runner image to a registry host customrepo_host and a repository customrepo, run the following commands:
docker pull docker.io/xebialabs/release-runner:<version>
docker tag docker.io/xebialabs/release-runner:<version> customrepo_host/customrepo/release-runner:<version>
docker push customrepo_host/customrepo/release-runner:<version>
Custom Public Registry - Example
The following example lists the questions asked when you select a custom public registry during runner install or upgrade:
? Select type of image registry: public [Custom Public Registry (Uses a specific custom registry)]
? Enter the custom docker image registry name (eg: <imageRegistryName> from <imageRegistryName>/<repositoryName>/<imageName>:<tagName>): customrepo_host
? Enter the repository name for the Release Runner image (eg: <repositoryName> from <repositoryName>/<imageName>:<tagName>): customrepo
Custom Private Registry - Example
The following example lists the questions asked when you select a custom private registry:
? Select type of image registry: private [Custom Private Registry - Password protected (Uses a specific custom registry with password)]
? Enter the custom docker image registry name (eg: <imageRegistryName> from <imageRegistryName>/<repositoryName>/<imageName>:<tagName>): customrepo_host
? Provide the custom docker image registry secret: private-registry
? Enter the repository name for the Release Runner image (eg: <repositoryName> from <repositoryName>/<imageName>:<tagName>): customrepo
It is mandatory to create a secret when you use a private image registry.
Run the following command:
kubectl create secret docker-registry regcred \
--docker-server=customrepo_host \
--docker-username=<reg-user> \
--docker-password=<reg-password> \
-n digitalai