【发布时间】:2017-01-26 10:55:46
【问题描述】:
我正在尝试部署一个使用 docker-compose 构建的应用,但感觉好像我的方向完全错误。
- 我的一切都在本地运行——
docker-compose up使用适当的网络和主机启动我的应用程序。 - 我希望能够在生产机器上运行相同的容器和网络配置,只需使用不同的
.env文件。
我当前的工作流程如下所示:
docker save [web image] [db image] > containers.tar
zip deploy.zip containers.tar docker-compose.yml
rsync deploy.zip user@server
ssh user@server
unzip deploy.zip ./
docker load -i containers.tar
docker-compose up
此时,我希望能够在 docker-compose up 到达那里时再次运行,但这会尝试按照 docker-compose.yml 文件重建容器。
我有一种明显的感觉,我错过了一些东西。我是否应该交付完整的应用程序,然后在服务器上构建图像?如果您从注册表存储/加载图像,您将如何启动组合容器?
【问题讨论】:
-
我没有看到任何与 D 相关的内容?
-
@Bauss 很好,只是在输入 docker 标签时打错了。
-
我不明白,你说 docker-compose 试图从 docker-compose.yml 重建容器,除非有人用
--build调用docker-compose up,否则这是没有意义的。我唯一的想法是在你的产品框中docker images并检查图像名称和标签是否与 docker-compose.yml 中的匹配。 -
@Stratos 我认为问题在于 docker 图像在 tar 文件中的
docker load之后不再有标签。 -
@DanPrince 这是我的怀疑,一切都解决了吗?
标签: docker docker-compose