在没有docker注册的情况下,将docker图像部署到安全的容器中
我正在尝试使用ansible-container来创build和部署我的docker应用程序,但是我无法使其工作。
我有一个远程服务器,我可以通过合理的configuration。 在我的本地机器上,我使用安全容器来构build一个工作正常的Docker镜像。 运行ansible-container build
之后,我的本地机器上有docker镜像。 但是,我没有得到下一步的工作。 我的目标是将Docker镜像从本地机器推送到远程服务器,然后在远程服务器上创build并启动基于此镜像的Docker容器。
我没有使用dockerregistry。 因此,我正在使用--local-images
选项来执行--local-images
ansible-container deploy
命令,以防止它将图像推送到registry(至less这是我从文档中理解的)。 这个命令成功地创build了一个可靠的剧本,但是当我执行这个剧本时,它仍然试图从docker.ioregistry中拉出图像,当然在那里找不到它。
我认为缺less的一步是将本地docker映像推送到远程服务器,但是在这个用例中找不到任何有关容器文档的提示。 我也看到了一个可靠的docker_image模块,但据我所知这也是围绕使用registry。
如何将Docker镜像部署到远程服务器?
如果您没有dockerregistry,您需要做的是将图像保存到tar包中,然后将其上传到机器,然后将tarball导入到docker映像中。
在本地机器上将图像保存到tarball中:
docker save --output image.tar <image>
将tar上传到目标机器后,可以使用以下命令将其导入到docker映像中:
docker import image.tar <image-name>
从那里,图像将在机器上,docker工人不会试图从registry中拉出。