使用docker compose装载docker卷的问题 我的情景

使用docker compose装载docker卷的问题 我的情景,docker,docker-compose,docker-machine,Docker,Docker Compose,Docker Machine,我正在尝试使用docker compose.yml文件构建docker swarm version: '3' services: myapp-nginx: image: nginx:1.10 volumes: - ./nginx/certs:/etc/nginx/certs ports: - 80:80 - 443:443 使用build命令如下 $ docker stack deploy --compose-file docke

我正在尝试使用
docker compose.yml
文件构建docker swarm

version: '3'

services:
  myapp-nginx:
    image: nginx:1.10
    volumes:
     - ./nginx/certs:/etc/nginx/certs
    ports:
      - 80:80
      - 443:443
使用build命令如下

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

Creating network myapp_default
Creating service myapp_myapp-nginx
我的系统有
Docker版本17.03.1-ce-mac5(16048)

问题 卷装载不起作用,如果我注释掉
Volumes:-./nginx/certs:/etc/nginx/certs
,则一切正常

否则nginx根本不起作用,我明白了

CAGTAM1059934:docker iskumar$ docker stack ps myapp
ID            NAME                  IMAGE       NODE      DESIRED STATE  CURRENT STATE            ERROR                             PORTS
efjia8b7y6jd  myapp_myapp-nginx.1      nginx:1.10  manager1  Ready          Rejected 5 seconds ago   "invalid mount config for type…"  
c9c6ogh11osi   \_ myapp_myapp-nginx.1  nginx:1.10  worker2   Shutdown       Rejected 10 seconds ago  "invalid mount config for type…"  
iveikxpnbq6x   \_ myapp_myapp-nginx.1  nginx:1.10  worker1   Shutdown       Rejected 15 seconds ago  "invalid mount config for type…"  

在docker compose v3中是否有任何特殊的装载卷的方法?

装载卷时必须使用绝对路径,也可以使用docker run

$ docker run --rm -it -v ./eos:/eos:ro ubuntu 
docker: Error response from daemon: create ./eos: "./eos" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intented to pass a host directory, use absolute path.
See 'docker run --help'

我在macbook上运行了
docker stack deploy
,而不是在boot2docker虚拟机上运行。这就是为什么系统找不到这些网络挂载源,即使我使用
eval$(docker machine env manager1)激活了manager1

首先,我使用--no trunc参数来查看完整的错误消息

$> docker node ps --no-trunc
---
Showed "invalid mount config for type "bind": bind source path does not exist"  
---
之后,将文件从主机系统(我的MacBook)复制到VM,启动堆栈工作正常


绝对路径仍然不起作用,例如
/Applications/XAMPP/xamppfiles/htdocs/myapp/docker/nginx/certs:/etc/nginx/certs:ro
我得到
类型的装载配置无效
错误,尽管使用
docker compose-d在macbook本机docker安装上同样的脚本可以正常工作。但在使用命令
eval$(docker machine env Manager 1)
切换到docker集群并使用
docker stack deploy部署后,我遇到了问题。这是完整的消息错误吗?通过挖掘Docker代码,有多个可能性。我使用
Docker stack ps myapp
查看日志,这导致
错误:“类型的装载配置无效…”
是否有其他命令查看详细日志?我需要“…”