2016-05-23 9 views
1

ドッカーボリュームを使用してコードディレクトリをマウントしようとしていますが、マウントできません。 私のドッカー作成ファイルの関連セクションは次のとおりです。カスタムドッカーファイルでボリュームをドッキングします。

web: 
    build: ./web 
    dockerfile: Dockerfile 
    links: 
    - db:db 
    - elasticsearch:elasticsearch 
    volumes: 
    - ./web:/usr/src/app 

webフォルダには、次の手順でDockerFileを持っています。

ドッカーの作成は問題なく動作していますが、起動後にボリュームが表示されません。

[email protected]:/home/django/test# docker inspect test_web | grep -i volume 
     "Volumes": null, 
     "Volumes": null, 

これは関連性がある場合、ここに残りの部分があります。

elasticsearch 
nginx 
postgres db 
+0

お使いのOSは? –

+0

Ubuntu 14.04、Docker 1.9.1 –

答えて

1

次の構文が機能します。

ボリューム: - $ {PWD} /ウェブ:は/ usr/src /アプリ

web: 
    build: ./web 
    dockerfile: Dockerfile-aside 
    links: 
    - db:db 
    - elasticsearch:elasticsearch 
    volumes: 
    - ${PWD}/web:/usr/src/app 
    env_file: .env 

私は内部のコードを実行していたため、それ以前の移行がコピーされていなかった理由の一つがあります現在のコンテナではなく、新しいコンテナです。

代わりの

docker-compose run --rm web /bin/bash 

私は

docker exec -it my_container_name web /bin/bash 

を試してみましたが、その後、migrateコマンドを実行すると、新しく生成されたデータベースの移行コマンドがソースディレクトリに存在しません。 docker-compose execを使用するのが理想的ですが、使用している現在のバージョンは1.7未満です。そのため、私は上記の暫定的な解決策を真っ向から使用しています。

https://github.com/d11wtq/dockerpty/pull/48

関連する問題