我怎样才能确定为什么我的副本没有从群中开始?

我在我的pipe理器节点中使用了以下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服务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多分钟。

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