如何在 gitlab 上构建 docker 图像后拉取新的 docker 图像并重新启动 docker 容器?
How to pull new docker images and restart docker containers after building docker images on gitlab?
有一个 asp.net core api
项目,来源在 gitlab
中。
创建 gitlab
ci/cd pipeline
以构建 docker
图像并将图像放入 gitlab
docker
注册表
(感谢 https://medium.com/faun/building-a-docker-image-with-gitlab-ci-and-net-core-8f59681a86c4)。
如何在将图像放入 gitlab
后在我的生产系统上更新 docker containers
docker registry
?
*更新我的意思是:
docker-compose down && docker pull && docker-compose up
执行此操作的最佳方法是使用图像提取器,有很多开源可用,或者您可以在 Shell 上编写自己的源代码。有一个here。我们使用 swarm,我们使用这个钩子概念从我们的 CI-CD 管道中触发。一旦我们的构建阶段完成,我们 http 钩子 url,然后 docker 拉取更新的图像。
这样做的一个缺点是您需要一个守护进程来监视您的挂钩任务,它不会崩溃或停止运行。所以我的建议是 运行 这个钩子任务作为 docker 容器, restart-policy
作为 RestartAlways
有一个 asp.net core api
项目,来源在 gitlab
中。
创建 gitlab
ci/cd pipeline
以构建 docker
图像并将图像放入 gitlab
docker
注册表
(感谢 https://medium.com/faun/building-a-docker-image-with-gitlab-ci-and-net-core-8f59681a86c4)。
如何在将图像放入 gitlab
后在我的生产系统上更新 docker containers
docker registry
?
*更新我的意思是:
docker-compose down && docker pull && docker-compose up
执行此操作的最佳方法是使用图像提取器,有很多开源可用,或者您可以在 Shell 上编写自己的源代码。有一个here。我们使用 swarm,我们使用这个钩子概念从我们的 CI-CD 管道中触发。一旦我们的构建阶段完成,我们 http 钩子 url,然后 docker 拉取更新的图像。
这样做的一个缺点是您需要一个守护进程来监视您的挂钩任务,它不会崩溃或停止运行。所以我的建议是 运行 这个钩子任务作为 docker 容器, restart-policy
作为 RestartAlways