2017-07-06 3 views
1

ホストディレクトリパスにコロンが含まれているときに、データボリュームとしてホストディレクトリをマウントする方法はありますか?それは、追加オプションとしてdataの治療だその場合 例ドッカーボリュームをコロンでマップできません

-v /colon:path/test:data 

/colon:path/testは正しいUnixパスです。

+0

は私にはバグ/エッジケースのように見えます。あなたに問題を提出することを提案してください:) – johnharris85

+1

このバグに従ってください:https://github.com/moby/moby/issues/8604 –

+0

シンボリックリンクを作成してコロンディレクトリの代わりにマップするとどうなるでしょうか。 'ln -s/colon:path/nocolonpath' – Robert

答えて

0

はい。 --mountオプションを使用すると、送信元と送信先を指定できます。このオプションはDocker 17.05.0に追加されました。

--mount type=bind,source=/colon:path/test,destination=/data 

注:絶対パス名を使用する必要があります。私は宛先が/ dataであると仮定しています。 docker run manページから

:--tmpfsと--volumeの後継者であるにも--mount

を参照してください。 --volumeを廃止する計画はありませんが、--mount の使用をお勧めします。

例:

touch foo:bar 
docker run --rm --mount type=bind,source=$PWD/foo:bar,destination=/tmp/foo:bar busybox ls /tmp 
+0

これは' docker service create'のオプションです。私はdocker swarmモードを使用していません。 – mordka

+0

これはドッキングするためのオプションです。上記リンクのマンページを確認してください。 –

+0

あなたのパスがそれで終わるならば、あなたは '、destination = ...'をどのようにエスケープしますか? (明らかに、これはどこかのセキュリティ上の問題です) – jonasfj

関連する問題