Webアプリケーション用のdocker-composeでドッカー画像を作成しようとしています。私のWebアプリケーションは、ファイルシステムにファイルを書き込むためのアクセス許可が必要です。root以外のユーザーのDocker-composeボリュームの作成
私Dockerfileは、私がドッキングウィンドウコンテナに/code
に私の現在の.
ディレクトリをマウントしたい
# some other stuff
RUN addgroup -S web && adduser -S -g web web
USER web
が含まれています。
私はdocker-compose build
& & docker-compose up
を実行すると、コンテナ内の私の/code
ディレクトリは、ユーザのために「1000:1000」を所有していることを発生し、ない私はDockerfileで作成した私のユーザー。
version: '2'
services:
admin:
build:
context: .
dockerfile: Dockerfile
command: python manage.py 0.0.0.0 8030
volumes:
- .:/code
ports:
- 9000:8030
stdin_open: true
tty: true
volumes:
.:
driver_opts:
o: uid=100,gid=65533
ご覧のとおり、driver_optsにuser uidとgidパラメータを渡そうとしました。それは助けにはならなかった。
私のディレクトリ:.
から/code
へのマウントは、ユーザweb
のドッキング・コンテナ権限でどうすればいいですか?
OS:Ubuntuの16.04
ドッキングウィンドウのバージョン17.09.0-CE
ドッキングウィンドウ・コンバージョン1.8.0
はい、ほとんどこれです。これを解決するには、ユーザーuidとgidを明示的に設定してください: 'RUN addgroup -S web -g 1000 && adduser -u 1000 -G web -D web'。それは私の問題を解決する権限を書いて解決しました。しかし、なぜ私のボリュームが常に '1000:1000'によって所有されてマウントされているのかはまだ分かりません。どうすれば変更できますか –