2017-12-07 12 views
0

Docker内でDockerを実行しようとしています。 私はAWS ECSの最初のコンテナを実行しています。タスク定義には、以下に説明する "ボリューム"と "マウントポイント"が含まれ、CentOS 7イメージが含まれています。Docker内でDockerを実行しているときにボリュームをマウントできません

このコンテナが起動しているとき、私は「ドッキングウィンドウ-CE」をインストールして、その中に新しいコンテナを実行し、「kurento-メディアサーバー」のUbuntu 14.4画像( https://hub.docker.com/r/kurento/kurento-media-server/)をアップロードしようとしている
"mountPoints": [ 
     { 
     "readOnly": null, 
     "containerPath": "/usr/share/rec/screenrecordings", 
     "sourceVolume": "recording" 
     } 
    ], 

    "volumes": [ 
    { 
     "name": "recording", 
     "host": { 
     "sourcePath": "/recording" 
     } 
    } 
] 

。ドッカーインサイド

は、コマンドを実行します:

“docker run -h my-app --name my-app -d <ECR repo end point>/image:latest --privileged -v /usr/share/rec/myApp:/usr/share/myApp --rm=true” 

がドッキングウィンドウは、コード0、ドッキングウィンドウのログにエラーなしですぐに終了しました。

--mountで実行:-theがマウントドッキングウィンドウの内側になったときに「ドッキングウィンドウは検査」を実行するとき(コンテナが実行されている

“docker run -h my-app --name my-app -d <ECR repo end point>/image:latest --privileged --mount type=bind,source=/usr/share/rec/myApp ,target=/usr/share/myApp --rm=true” 

をそのマウントが確立されていないが、「マウント」のセクションでは、空でありますディレクトリは存在しません)。

ホスト "/ usr/share/rec/myApp"のパスは、コンテナパス "/ usr/share /"としてweelとして存在します。

ドッカーバージョン:ドッカーバージョン17.09.0-ceが、私は本当にこの作業を取得する方法上の任意の助けと洞察力をいただければ幸いです

afdb6d4構築。

ありがとうございます。

+1

は、私はあなたが完全にdokerをインストールしている場合は、このhttps://stackoverflow.com/questions/31381322/docker-in-docker-cannot-mount-volume – Kilian

+0

を読むことができると思います'/ usr/share/rec/myApp'は、'/usr/share/rec/myApp'を意味します。 myAppは親コンテナの内部に存在するはずです。 – yamenk

+0

@yamenkはい、親コンテナにパスがあります/ usr/share/rec/myApp – shani

答えて

0

問題を解決しました。問題はコマンド引数の順序にあり、 - マウントはドッカーイメージ名の前に書かれていなければなりません。 私は、このコマンドを使用して終わった:

docker run -d -h my-app --name my-app --mount type=bind,source=/usr/share/rec/myApp ,target=/usr/share/myApp <ECR repo end point>/image:latest --privileged --rm=true 
関連する問題