我是
docker
和 docker-compose
的新手。我将 docker-compose 文件与多个服务一起使用。使用 docker-compose 时,我在本地计算机上有容器和图像,我的任务是将它们传递到远程主机。
我已经确定了几种解决方案:
tar
文件并将其加载到远程主机上。我发现this post,建议在这种情况下使用 shell 脚本。或者,我可以直接使用 docker ,但这样做意味着失去 docker-compose 的好处。
general
驱动程序一起使用。但是,在这种情况下,我只能从一台机器进行部署,或者我需要配置certificates。对我来说这似乎不是一个简单的解决方案。
docker-compose push
(docs) 到远程主机,但为此,我需要在远程主机上创建一个注册表,并且我必须添加主机名并将其作为参数传递给 docker-每次都作曲。
如果您
不能使用注册表,那么docker save
/
docker load
是下一个最佳选择,但我仅在您处于诸如气隙环境之类的环境中(其中之间没有网络连接)时才推荐它。构建系统和生产系统。无法直接将图像从一个系统推送到另一个系统。出于安全原因,您应该避免启用 Docker 网络 API:任何可以访问网络公开的 Docker 套接字的人几乎都可以轻松 root 其主机。
docker-compose.yml
文件本身,以及绑定安装到容器中的任何配置文件。普通的
scp
或
rsync
在这里效果很好。没有办法在纯 Docker 生态系统中转移这些。