2017-04-01 3 views
0

私はUbuntuマシンでドッカー(1.12.3)を使用しています。私はWindowsネットワークパス(\\ my_win_path \ c)にその出力を送信するpythonスクリプトを実行しています。私はpythonスクリプトを実行することができます。誰かが2番目の部分で私を助けることができます(つまり、出力(そのテキストファイル)をネットワークの場所に送信する)。ドッカーでネットワークの場所をマウントする方法

このネットワークの場所がアクセス制限(ほんの数IDS /人々がアクセス権を持っている)と私が作成されるイメージは、他の多くの人々によって使用されるように、私は、ホストマシン上の任意の依存関係を作成しないことをとにかくです彼らはイメージを実行するために異なるマシンを使用していますか?

答えて

0

まず、Ubuntuマシンへのネットワークパスをマウントします。

-vパラメータをdocker runコマンドで追加してDockerコンテナにマウントします(ネットワークパスディレクトリをマウントします)。たとえば、ネットワークドライブをUbuntuマシンの/mntにマウントした場合です。

docker run --privileged -v /mnt:/opt <rest/of/the/parameters> 

出力ファイルをコンテナ内の/ optにリダイレクトします。

+0

Windowsネットワークドライブのマウント方法については、このリンクを参照してください。[mount-windows-network-shares-in-linux](https://martin.hoppenheit.info/blog/2014/mounting-windows-network-shares) -in-linux /) – shahin

+0

不要な場合は '--privileged'を使用しないでください。このオプションを指定して実行すると、コンテナが提供するすべてのセキュリティが無効になり、コンテナ内のプロセスが中断してホストを制御できるようになります。 – thaJeztah

+0

ShahinとJeztahありがとうございました。あなたが提案したものを実行することで、私はコンテナにマウントされた場所を得ることができますが、それはホストマシンへの依存関係を作り出しています。私がこの画像を作成してプッシュし、他の人が画像を引っ張って実行した場合、自分のマシンに搭載されていない可能性があるため、そのマシンでは動作しません。この依存関係が消滅する方法があるかどうかを知りたかったのです。 – Raji

関連する問題