Load an external docker image into an environment without internet access

vaibhav.dhawanvaibhav.dhawan Member, Administrator, Moderator, Domino Posts: 7 admin

First, you want to save the docker image you're looking to import. This is done by pulling the image down to your local docker on a machine with internet access, then saving the image as an archive:

docker pull quay.io/domino/base:Ubuntu18_DAD_Py3.6_R3.5-20190724

docker save 8a6fe6540561 | gzip > Ubuntu18_DAD_Py3.6_R3.5-20190724.tar.gz

Next, transfer this file into your domino environment. The commands below must run on a machine with access to your docker registry within domino. You can load the archived image into docker locally from linux using:

docker load < Ubuntu18_DAD_Py3.6_R3.5-20190724.tar.gz

Next, you'll need to push the local image to a remote registry so it can be accessed by Domino. To do this, run 'docker image ls' to get the image ID for the new image you've loaded:

REPOSITORY               TAG                 IMAGE ID            CREATED             SIZE
<none>                   <none>              8a6fe6540561        7 days ago          22.6GB

Next we want to tag this image (using the ID) and push it to your docker repository:

docker tag 8a6fe6540561 localmirror.domino.tech:5000/domino_dad_ubuntu18:latest

docker image ls
REPOSITORY                                         TAG                 IMAGE ID            CREATED             SIZE
localmirror.domino.tech:5000/domino_dad_ubuntu18   latest              8a6fe6540561        7 days ago          22.6GB

docker push localmirror.domino.tech:5000/domino_dad_ubuntu18:latest

Finally, you'll want to create a new Compute Environment using your new image as the base:

Note: The example above uses the registry localmirror.domino.tech, however the registry address may be different for individual deployments, depending on your local setup.

Sign In or Register to comment.