将 docker 容器部署到生产环境的最佳方式是什么?
- 将
Dockerfile
添加到 git 存储库并在生产系统上运行docker build
- 使用
docker commit
将更改提交到容器并将其推送到私有(private) Docker 存储库,然后使用docker pull
将其 pull 到生产系统。
我是否应该运行 docker commit
,即使我不更改基础架构而只更改应用程序代码?
我希望我的问题很清楚。
最佳答案
我想说的是,在生产环境中,您只想 pull 并运行容器的最后一个镜像。
所以拥有私有(private)注册表的想法很好,您的交付管道将是:
- 提交对您的应用或 Dockerfile 的更改
- CI 进行更改,编译您的应用程序,构建您的新图像,并将其推送到注册表
- 在生产中 pull 新图像
- 运行它!
在我这边,我不使用 docker commit
,我更喜欢带有 docker build ... -t ...
的标签。我只在使用交互式 shell 调试容器时使用 commit
。
关于git - 使用 git 的 Docker 部署工作流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24856088/