【问题标题】:Update image in service without downtime在不停机的情况下更新服务中的图像
【发布时间】:2019-04-09 06:40:09
【问题描述】:

我正在 Docker Swarm 上运行一项服务。这是我为部署服务所做的:

docker swarm init
docker stack deploy -c docker-compose.yml MyApplication

docker-compose.yml 的内容:

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。在不停机的情况下将新版本的映像部署到服务的正确方法是什么?

【问题讨论】:

    标签: docker docker-compose docker-swarm


    【解决方案1】:

    实现这一点的一种方法是:

    我有一些关于这个主题的例子:


    有了这个,你可以简单地再次运行docker stack deploy...。如果服务有变化,将会更新。

    【讨论】:

      【解决方案2】:

      您可以使用命令docker service update --image,但它会启动一个隐含比例为 0/1 的新容器。

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-10-18
        • 2016-02-22
        • 2021-06-10
        • 1970-01-01
        • 2021-05-05
        • 1970-01-01
        • 2021-11-10
        • 1970-01-01
        相关资源
        最近更新 更多