Downloading container images
You may need to download all the container images for IBM Cloud Pak® for Integration--for example, to copy them to an internal registry or scan them for vulnerabilities. This procedure describes how to download container images; however, you may need to use different tools, depending on your environment.
Follow the procedure for installing with a bastion host in Installing in an air-gapped environment, up to and including the step "Download the installer and image inventory", which does the following:
Downloads the CASE packages, which contain metadata for the container images required to deploy each capability. Each CASE package also contains the required scripts to mirror images to a private registry, and to configure the target cluster to use the private registry as a mirror.
Generates comma-separated value (CSV) files listing the images for all capabilities (a single CSV file is created for each capability and its dependencies). The CSV files, combined with your IBM Entitled Registry entitlement key, are used for downloading or mirroring the images manually in the following scripts.
Log in to your container tool to access the entitled registry, using the username
cp
and your entitlement key.Use a shell script to process all images for all capabilities supported on the target architecture.
For example, for
x86
/amd64
architecture:tail -q -n +2 $HOME/offline/*-images.csv | while IFS="," read registry image_name tag digest mtype os arch variant insecure digest_source image_type groups; do if [[ "$arch" == "amd64" ]]; then docker pull "$registry/$image_name@$digest" docker tag "$registry/$image_name@$digest" "$registry/$image_name:$tag" fi done
For the
s390x
architecture:tail -q -n +2 $HOME/offline/*-images.csv | while IFS="," read registry image_name tag digest mtype os arch variant insecure digest_source image_type groups; do if [[ "$arch" == "s390x" ]]; then docker pull "$registry/$image_name@$digest" docker tag "$registry/$image_name@$digest" "$registry/$image_name:$tag" fi done
Instead of
docker
, you can use alternative container tools such aspodman
orskopeo
:Use
podman
as a direct replacement fordocker
in the preceding commands.Use one
skopeo
command to replace thedocker pull
anddocker tag
commands. For example:skopeo copy --dest-tls-verify=false docker://$registry/$image_name@$digest docker-daemon:$registry/$image_name:$tag
You can also use
skopeo
to save images to disk, or to copy them directly to another container registry.