Docker堆栈仅部署3个副本中的2个更新

时间:2020-10-06 08:58:33

标签: docker docker-compose docker-swarm docker-swarm-mode

我有一个在3个节点上运行的Docker Swarm,具有3个副本(每个节点1个)。我们的持续集成管道使用docker stack deploy命令部署新代码。

几乎系统地更新了3个副本中的2个。 docker service ls显示服务1“自xxx秒起运行”,服务2“自xxx秒起运行”和服务3在“ xxx小时前”运行,显然没有尝试更新服务。

请注意以下几点:

  • docker service scale xxx=0然后docker service scale xxx=3按预期更新所有服务
  • docker service update --force xxx总是失败,但是我无法找到有意义的日志

使用的完整命令: docker --tlsverify --tlscacert=<ca> --tlscert=<cert> --tlskey=<key> stack deploy --prune --with-registry-auth --resolve-image=always --compose-file docker-compose.yml stackname

docker-compose示例:

services:
  api:
    image: gitlab.heyaxel.com:5050/axel/axel-coach-manager:{{TAG}}
    deploy:
      replicas: 3

其中TAG被分支的最新git哈希(git describe --always)取代。

0 个答案:

没有答案