2017-08-21 7 views
2

私はすべての依存関係(コンパイラ、ライブラリなど)を、ホストを汚染することなく適切な環境の中にバンドルすることができるので、ソフトウェア開発にドッカーを使用しています。ホスト上に開発ドッカーコンテナディレクトリをマウントする

一般的に私がやること(私はかなり一般的です):私はソフトウェアが構築されるドッカーボリュームを使って開発コンテナにマウントされたソースコードのみを含むディレクトリをホスト上に持っています実行される。ボリュームが同期しているため、ソースの変更がコンテナ内に反映されます。

ここでは落とし穴があります:コードエディタを使用する場合、ソフトウェア依存関係はホストからアクセスできないため壊れているとみなされます。したがって糸くずなどは働きません。

コンテナからホストに/usr/local/includeと言うと、私のエディタが正しく設定されているので、私はすべての警告を修正できます。

私はWindowsを使用しています...それが含まれているファイルシステムを上書きしてしまうためドッキングウィンドウの容量が、ここでは解決策ではありません。また

推測する(ここでは選択の余地が)ので、私の流れではありません:

Windows > Samba > Linux Host > Docker > Container

と私はIDE(VSコード)を切り替えたくないです。

アイデア?ありがとうございました!

答えて

1

基本的には、ボリュームをコンテナからホストに逆方向にマウントすることができます。 Dockerでは残念ながらこれは不可能で、この質問にはさまざまなバリエーションがあります:How to mount a directory in docker container to host

ファイルをコンテナからホストにコピーすることができません。ホストのパス/usr/local/includeと一致するか、別のフォルダを使用する必要があるかどうかは、設定​​によって異なります。

ドッカーイメージを変更する必要がない最も簡単な解決方法は、docker cpを使用してファイルをコピーすることです。

それ以外の場合は、(すべての依存関係をインストールした後に)画像を入力して/tmp/includeにファイルをコピーし、その場所にホストボリュームをマウントすることで自動化できます。

関連する問題