docker swarm列出服务的依赖关系

时间:2018-03-14 16:45:06

标签: docker docker-swarm docker-stack

假设我们有以下堆栈文件:

version: "3"
services:
  ubuntu:
    image: ubuntu
    deploy:
      replicas: 2
      restart_policy:
        condition: on-failure
      resources:
        limits:
          cpus: "0.1"
          memory: 50M
    entrypoint:
      - tail
      - -f
      - /dev/null
    logging:
      driver: "json-file"
    ports:
      - "80:80"
    networks:
      - webnet
  web:
    image: httpd
    ports:
      - "8080:8080"
    hostname: "apache"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
    deploy:
      placement:
        constraints: [node.role == manager]
      resources:
        limits:
          memory: 32M
        reservations:
          memory: 16M
    depends_on:
      - "ubuntu"
    networks:
      - webnet
networks:
  webnet:

当我运行docker service inspect mystack_web时,生成的输出不会显示对 depends_on 条目的任何引用。

可以吗?以及如何打印给定docker服务的依赖项?

1 个答案:

答案 0 :(得分:3)

码头群上没有depends_on使用:

  

使用版本3撰写文件在群集模式下部署堆栈时,将忽略depends_on选项。 - from docker docs

关于GitHub的另一个很好的解释:

  与depends_on一起使用时,

docker stack deploy是无操作。群集模式服务在失败时重新启动,因此没有理由延迟启动。即使他们失败了几次,他们最终也会康复。 - from GitHub