2016-07-26 18 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は、絶対パスまたは名前の値とすることができます。 がhost-dirの絶対パスを指定すると、指定した パスにDockerがバインドマウントされます。あなたが名前を指定した場合は、ドッカーは、その名前によって指定されたボリューム を作成

+2

これは、 'docker run -v myDir:/ containerdir ...'のような相対パスを使ってディレクトリをマウントしようとすると混乱することがあります。その答えでは)myDirという名前を付けてバインドしますが、myDirの内容はコンテナで使用できません。この場合、絶対パスを使用して、例えば 'docker run --volume $(pwd)/ myDir:/ containerdir ...' –

関連する問題