我有一个集群,其中部署了不同的技术码头工人。(Zookeeper、Kafka、Elastic、Storm 和自定义 Web 应用程序)
Web 应用程序经历了巨大的变化,每次 web docker 更改时都必须更新堆栈。偶尔会有 Elasticsearch 镜像的更新。
当我运行 docker stack deploy 时,它会重新启动所有现有的甚至没有更改的 docker 服务。这阻碍了整个堆栈,并且整个应用程序都有停机时间。Docker 堆栈没有更新选项。
有人对此有解决方案吗?
我有一个集群,其中部署了不同的技术码头工人。(Zookeeper、Kafka、Elastic、Storm 和自定义 Web 应用程序)
Web 应用程序经历了巨大的变化,每次 web docker 更改时都必须更新堆栈。偶尔会有 Elasticsearch 镜像的更新。
当我运行 docker stack deploy 时,它会重新启动所有现有的甚至没有更改的 docker 服务。这阻碍了整个堆栈,并且整个应用程序都有停机时间。Docker 堆栈没有更新选项。
有人对此有解决方案吗?
docker service update --image
成功了。
使用更改的配置(docker-compose.yml 文件)重新部署堆栈可以解决问题,请参阅https://docs.docker.com/engine/reference/commandline/stack_deploy/#extended-description。他们在那里说“从 swarm 上的 compose 或 dab 文件创建和更新堆栈。 ”而且我没有看到像 'docker stack update' 这样的命令。所以这可以解决问题。