首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在服务中更新映像而不停机

在服务中更新映像而不停机
EN

Stack Overflow用户
提问于 2019-04-09 06:40:09
回答 2查看 2.6K关注 0票数 5

我在码头群上做一项服务。这就是我在部署服务时所做的工作:

代码语言:javascript
复制
docker swarm init
docker stack deploy -c docker-compose.yml MyApplication

docker-compose.yml:含量

代码语言:javascript
复制
version: "3"
services:
    web:
        image: myimage:1.0
        ports:
            - "9000:80"
            - "9001:443"
        deploy:
            replicas: 3
            resources:
                limits:
                    cpus: "0.5"
                    memory: 256M
                restart_policy:
                    condition: on-failure

不要说我更新了应用程序并构建了一个新的映像myimage:2.0。什么是在不停机的情况下将新版本的映像部署到服务中的正确方法?

EN

回答 2

Stack Overflow用户

发布于 2019-04-21 20:45:01

实现这一目标的一种方法是:

  • 控制docker如何使用update_config 更新您的服务
    • 配置
    • 请注意orderparallelism,例如,如果您选择order: stop-first + parallelism: 2,并且您的复制品parallelism相同,则在更新时,应用程序将完全停止。

  • 如果您的更新没有成功,您可能希望回滚

关于这个问题,我有几个例子:

有了这个,您可以简单地再次运行docker stack deploy...。如果服务中有更改,则将对其进行更新。

票数 7
EN

Stack Overflow用户

发布于 2019-04-09 08:05:14

您可以使用命令docker service update --image,但它将启动一个新容器,其规模为0/1。

停机时间取决于您的应用程序。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55586553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档