2015-11-12 4 views
5

非ルートコンテナユーザが書き込み可能なボリュームをマウントするにはどうすればよいですか?ドッカーのルート以外のボリュームコンテナにどのように書き込むのですか?

FROM alpine 
RUN adduser -D myuser 
USER myuser 

ビルドイメージ:どちらかのボリュームがroot以外のユーザーが所有しているか、権限が777

Dockerfileに設定されていると私はOKだ

docker build -t example . 

実行イメージ、/参照ユーザーが書き込み不可能なアプリ

% docker run -i -t -v myapp:/app example /bin/sh 
/$ whoami 
myuser 
/$ ls -lha/| grep app 
drwxr-xr-x 2 root  root  4.0K Nov 12 21:01 app 
/$ 

アプリはグローバルに読み取り可能ですが、rootだけが書き込み可能です。

答えて

4

これはまだサポートされていません。issue 2259で調査されています。
他の画像に影響するのはdocker-javaです。

基本的にはchown and copy (with the right user) your data in the volumeにする必要がありますが、これはあまり便利ではありません。

+0

この場合、ボリュームはコンテナなので、回避策はありません。私は外部からドライブし、ボリュームベースのアクションをrootで実行し、他のユーザーは-uで別のユーザーとして実行します。このバグを私に指摘してくれてありがとう。 –

関連する問題