gpt4 book ai didi

linux - Docker 持续部署工作流程

转载 作者:IT老高 更新时间:2023-10-28 21:22:51 25 4
gpt4 key购买 nike

我计划最后使用 Docker 建立一个基于 jenkins 的 CD 工作流。我的想法是为每个绿色构建(由 Jenkins)自动构建一个 docker 镜像,然后通过 jenkins 或“手动”部署该镜像(我还不确定是否要自动运行每个绿色构建)。

构建一个新图像很容易。我的问题是关于部署本身。 “重新加载”或“重新启动”正在运行的 docker 容器的最佳做法是什么?假设为容器更改了图像,我如何在内部运行服务的同时优雅地重新加载它?我是否需要使用多个正在运行的容器和负载平衡来做传统的舞蹈,还是有一种“docker ”的方式?

最佳答案

Suppose the image changed for the container, how do I gracefully reload it while having a service running inside?

你不想要这个。

Docker 是一个用于管理应用程序及其依赖项的简单系统。它简单而健壮,因为应用程序的 ALL 依赖项都与它捆绑在一起。如果您的应用程序今天在您的笔记本电脑上运行,它明天将在您的服务器上运行。这是因为我们已经为您的应用捕获了 100% 的“输入”。

一旦您引入“升级”和“重启”等概念,您的应用程序就可以(意外地)在内部存储状态。这意味着它明天的行为可能与今天不同(在重新启动和升级 100 次之后)。

最好使用负载平衡器(或类似的)在您的版本之间进行转换,而不是尝试与 Docker 的哲学混为一谈。

关于linux - Docker 持续部署工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20738254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com