我怎样才能确定为什么我的副本没有在群中启动?

时间:2017-02-23 00:21:06

标签: docker containers docker-swarm

我在管理器节点中使用了以下docker swarm命令来部署我的应用程序。

$ docker stack deploy --compose-file docker-stack.yml sb

这是docker-stack.yml文件。

version: "3"
services:

  db:
    image: postgres:9.4
    volumes:
      - db-data:/var/lib/postgresql/data
    networks:
      - backend
    deploy:
      placement:
        constraints: [node.role == manager]

  sample_blog:
    image: quay.io/repository/copley/sample_blog
    ports:
      - 3000:80
    networks:
      - frontend
    deploy:
      replicas: 2
      update_config:
        parallelism: 2
      restart_policy:
        condition: on-failure

networks:
  frontend:
  backend:

volumes:
  db-data:

这是我运行命令时的输出:

$ docker service ls

ID            NAME             MODE        REPLICAS  IMAGE
dingz17v0qor  sb_db            replicated  0/1       postgres:9.4
tq3lgqvwx627  sb_sample_blog   replicated  0/2       quay.io/repository/copley/sample_blog

为什么我的副本没有启动?我等了20多分钟。

1 个答案:

答案 0 :(得分:0)

显然,由于撰写文件的constraints部分,它可能只是一个问题。您是否检查过您的Swarm配置良好并且有一个节点符合您的约束?我最近遇到了这个问题。