Domino provides bundles of offline installation media for when you run the Domino Platform Operator without internet access to upstream sources of images and charts.
To serve these resources, you must have a Docker registry accessible to your cluster.
URLs of available offline installation bundles are available on the releases page.
You can download these bundles using the curl command with basic authentication.
If there are network connectivity issues, you can use the wget
command with the --continue
or -c
option.
Contact your Domino account team for credentials.
Note
|
|
Example curl
download:
curl -u username:password -#SfLOJ https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/docker-images-5.x.x.tar
Example wget
download:
wget -c --user domino-registry --password xxxxxxx https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/docker-images-6.x.x.tar
If you are unable to download the full bundle, a partitioned bundle is available. To use the partitioned bundle, download all parts to recreate the full tarball and then follow the rest of the instructions.
Download the list of newline-separated part filenames:
curl -u username:password -#SfLOJ https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/docker-images-6.x.x.parts.txt
Download each part of the bundle using the provided filenames:
while read part; do curl -u username:password -#SfLOJ "https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/$part"; done < docker-images-6.x.x.parts.txt
Use the downloaded parts to recreate the full bundle:
cat docker-images-6.x.x.tar[0-9]* > docker-images-6.x.x.tar
SHA-256 checksums of files are available to verify the contents of downloaded bundles once downloaded.
Example verifications:
curl -u username:password -#SfLOJ https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/docker-images-6.x.x.tar.sha256sum
sha256sum -c docker-images-6.x.x.tar.sha256sum
If <filename>: OK
is not displayed, ensure the downloaded bundles were not tampered with before loading and installing them.
For partitioned bundles, use the following:
curl -u username:password -#SfLOJ https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/docker-images-6.x.x.parts.sha256sum
sha256sum -c docker-images-6.x.x.parts.sha256sum
If you require a list of images contained in a Domino release, they can be downloaded alongside the installation bundle.
curl -u username:password -#SfLOJ https://mirrors.domino.tech/s3/domino-artifacts/offline/fleetcommand-agent-6.0.0.catalog-6f783c6/images.json
The resulting JSON file contains a key-value pairing of Domino version and list of images.
Below is an example of extracting image names for Domino 6.x.x using jq:
jq -r '.["6.x.x"][].name' images.json
The images bundle is a .tar
archive that must be extracted before you use it.
tar -xvf docker-images-6.x.x.tar
In the docker-images
bundle there will be:
-
a collection of individual Docker image
.tar
files -
an
images.json
metadata file -
a
domino-load-images.py
script
The domino-load-images.py
file is a script to ingest the images.json
metadata file and load the associated Docker images for a specific Domino version into the given remote Docker registry.
To load images into your private registry, run domino-load-images.py
and pass in the URL of your registry as an argument. The script expects to run in the same directory as the images.json
metadata file and the .tar
image files.
Example:
python domino-load-images.py your-registry-url.domain:port
Once images have been loaded into your private registry you’re ready to install Domino.
To install Domino with a custom registry, the image references must be modified to reference the upstream registry.
Use the --image-registry
argument on the ddlctl create config
subcommand to modify all image references to the external registry for authentication purposes.
Use the --agent-repository
argument to specify the custom repository for the fleetcommand-agent
image (the default is quay.io/domino/fleetcommand-agent
)
Note
|
If you are using ddlctl version 0.4.4 you must specify dummy values for --username and --password if you are using the --offline flag to circumvent validations. This will not be required in future versions of ddlctl .
|
ddlctl create config --offline --agent-version 6.0.0.catalog-6f783c6 --agent-repository "your-registry-url.domain:port/custom-repository" --image-registry "your-registry-url.domain:port" --username "your-username" --password "your-password"
If your registry requires authentication, ensure the image_registries
section of your generated configuration is filled in with the correct credentials:
helm:
image_registries:
- server: your-registry-url.domain:port
username: '<username>'
password: '<password>'
Helm charts come prepackaged within the fleetcommand-agent
image that runs reconciliation jobs for the Platform Operator.
The helm
configuration object doesn’t need to contain additional fields besides image_registries
.
With your configuration file ready, you can proceed with the installation as outlined in Install Domino.