2016-07-26 61 views
6

空我有一个docker-compose.yml这样的:安装量为容器内

db: 
    image: mongo:latest 
    ports: 
    - "27017:27017" 
server: 
    image: artificial/docker-sails:stable-pm2 
    command: sails lift 
    volumes: 
    - server/:/server 
    ports: 
    - "1337:1337" 
    links: 
    - db 

server/相对于docker-compose.yml文件的文件夹。但是当我docker exec -it CONTAINERID /bin/bash和检查/server它是空的。

我在做什么错?

回答

6

尝试:

volumes: 
    - ./server:/server 

代替server/ - 也有一些情况下,码头工人不喜欢尾随削减。

+0

这实际上是解决问题的方法,谢谢:) – Hedge

4

作为每搬运工卷文件,

https://docs.docker.com/engine/tutorials/dockervolumes/#/mount-a-host-directory-as-a-data-volume

主机-DIR可以是一个绝对路径或名称的值。如果 为主机目录提供绝对路径,则Docker将绑定到您指定的 路径。如果你提供一个名称,多克尔该名称创建一个名为卷 使用

+2

好的补充,当试图通过使用像这样的'docker run -v myDir:/ containerdir ...'容器的相对路径来装载目录时,这可能会引起混淆,因为它会默默地创建一个docker卷在答案中)命名myDir并绑定它,但它不会使myDir的内容在容器中可用。在这种情况下,使用绝对路径工作,例如'docker run -volume $(pwd)/ myDir:/ containerdir ...' –