とMongoDBのディレクトリのボリュームをマウントすることはできません。私はmongo
シェルでありmongoimport --db stats --colletion pokemon --file stats.json
を実行しているし、データを確認することができますので、このディレクトリは私のデータで満たされている知っています。また、私はdocker-compose up
を実行するとエラーが発生しないは私が<code>./pokemondb</code>である私のMongoDBのデータを格納し、別のローカルディレクトリを持っている私のメインのプロジェクトディレクトリにドッキングウィンドウ・コン
pokemon-app:
build: .
ports:
- "3000:3000"
links:
- mongo
mongo:
image: mongo:3.2.4
ports:
- "27017:27017"
volumes:
- "./pokemondb:/data/db"
次のようになりますドッカ-コンファイルを持っています。しかし、問題は、mongodbディレクトリ
/data/db
に、私が渡そうとしたマウントされたボリュームが含まれていないことです。私は、データが
docker exec -ti [mongo container id] bash
を実行し、
mongo
シェルと
/data/db
ディレクトリをチェックして、正しく渡されていなかったことを確認することができ、実際には何もありません。何が間違っているのですか、mongodbのデータディレクトリにボリュームが正しくマウントされていないのはなぜですか?
EDIT:私は私の問題への予期しない解決策を見つけました。私の問題の1つは、私がドッカーのボリュームが何であるかについての基本的な誤解があったということでした。以前は、ドッカーボリュームは、起動時にローカルマシンのデータをドッカーコンテナにコピーすることを意図していました。しかし実際、ドッカーボリュームは、ドッカーコンテナで生成されたローカルマシン上のデータを保存することを意図しています。解決策は、私が上記尋ねた元の問題は、コンテナの起動時に画像にコピーデータは、データベースにデータをインポートdockerfileを作成することでした。私の最後のドッカーの作成ファイルはこのように見えます。
app:
build: .
ports:
- 3000:3000
links:
- mongodb
mongodb:
image: mongo:3.2.4
ports:
- 27017:27017
stats:
build: ./stats
links:
- mongodb
あなたは。/ pokemondb'フォルダ 'で存在していたファイルをチェックしましたか?あなたはmongoシェルを使ってexsitedデータを確認します。 –
あなたはどんなOSを使っていますか?あなたのシステムでSELinuxが動作していますか? – Fares
@ThanhNguyenVanはい、データはローカルにあります。私はすでに 'mongo'シェルでチェックしています。 @Fares私はOSX Yosemiteを実行しています –