获取类型" bind":无法挂载配置文件在docker

时间:2018-02-25 06:59:27

标签: docker docker-compose docker-swarm docker-stack

我正在尝试将以下docker-compose部署到docker swarm集群中。

version: '3.2'
services:
  jenkins:
    image: jenkins/jenkins:lts
    ports:
      - 8080:8080
    volumes:
      - ./data_jenkins:/var/jenkins_home
    deploy:
      mode: replicated
      replicas: 1

我确实在docker-compose所在的相同位置有 data_jenkins ,并将该路径作为卷传递。但为什么抛出源路径不存在。究竟是什么问题。

  

此外,如果目录不存在-v应该创建它正确。   为什么不呢?

1 个答案:

答案 0 :(得分:9)

Docker Swarm BIND MOUNTS

中明确记录了这一点
  

如果将主机路径装入服务的容器,路径   必须存在于每个群集节点。 Docker swarm模式调度程序可以   在满足资源可用性的任何计算机上计划容器   要求并满足所有约束和放置首选项   你指定。

与运行单个容器不同,如果不退出,则不会创建绑定装载主机目录。它必须在群集节点上运行容器之前存在。