Moby: dockerはrootとしてボリュームにファイルを作成しましたが、現在のユーザーとして作成する方法はありますか?

作成日 2015年08月12日  ·  3コメント  ·  ソース: moby/moby

DockerでDjangoを使用し、ボリュームがマウントされるときにローカルディレクトリを追加したいのですが、manage.pyを使用するときにいくつかのファイルを作成します。 すべてのファイルは「root」によって作成されますが、現在のユーザーに属するようにする方法はありますか?

全てのコメント3件

やあ!

問題の作成に関するこの重要な情報をお読みください。

新しい問題を報告する場合は、重複がすでに開いていないことを確認してください。 このリポジトリの問題リストを検索することで、これを確認できます。 重複している場合は、問題を閉じて、代わりに既存の問題にコメントを追加してください。

問題がバグであると思われる場合は、問題の説明を編集して、以下に示すバグレポート情報を含めてください。 7日以内にこの情報を提供しなかった場合、問題をデバッグすることはできず、問題を解決します。 ただし、後で情報を提供した場合は、再開します。

これは自動化された情報応答です。

ありがとう。

問題の報告の詳細については、 https: //github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issuesを参照してください。


バグレポート情報

以下のコマンドを使用して、ご使用の環境から重要な情報を提供してください。

docker version
docker info
uname -a

追加の環境の詳細(AWS、VirtualBox、物理など)を提供します。

問題を再現するための手順をリストします。
1.1。
2.2。
3.3。

受け取った結果を説明してください。

期待した結果を説明してください。

重要だと思われる追加情報を提供します。

----------レポート終了---------

ENEEDMOREINFO

$ docker version

Client API version: 1.19
Package Version (client): docker-1.7.1-7.gitd5a81b3.fc22.x86_64
Go version (client): go1.4.2
Git commit (client): d5a81b3/1.7.1
OS/Arch (client): linux/amd64
Server version: 1.7.1.fc22
Server API version: 1.19
Package Version (server): docker-1.7.1-7.gitd5a81b3.fc22.x86_64
Go version (server): go1.4.2
Git commit (server): d5a81b3/1.7.1
OS/Arch (server): linux/amd64

$ docker info

Containers: 8
Images: 100
Storage Driver: devicemapper
 Pool Name: docker-253:1-404319-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 4.575 GB
 Data Space Total: 107.4 GB
 Data Space Available: 39.96 GB
 Metadata Space Used: 7.352 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.14 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93 (2015-01-30)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 4.1.3-201.fc22.x86_64
Operating System: Fedora 22 (Twenty Two)
CPUs: 4
Total Memory: 11.44 GiB
Name: kyan.xxx.xxx.xxx.com
ID: V6E4:XJB2:BURJ:SRYK:D6VW:2BDW:CFNH:BT4J:G54A:NSK5:OQEP:C4H3


$ uname -a

Linux kyan.laptop.nay.redhat.com 4.1.3-201.fc22.x86_64 #1 SMP Wed Jul 29 19:50:22 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

追加の環境の詳細を提供します(物理的)。

問題を再現するための手順をリストします。

  1. https://docs.docker.com/compose/django/に従って構成を作成します(「プロジェクトのビルド」の前)
  2. docker-compose.ymlにprivilegedを追加するか、 sudo setenforce 0を実行して、コンテナークラウドにファイルをボリュームに書き込みます。
  3. docker-compose run web django-admin.py startproject composeexample .を実行します
  4. Djangoによって生成されたファイルは「root」ユーザーによって作成されました

私の質問は:コンテナで生成されたファイルにホストユーザーとグループを使用させる方法はありますか?

drwxr-xr-x. 2 root root 4.0K Aug 12 09:21 composeexample
-rwxr-xr-x. 1 kyan kyan  360 Aug 12 09:21 docker-compose.yml
-rwxr-xr-x. 1 kyan kyan  146 Aug 11 18:59 Dockerfile
-rwxr-xr-x. 1 root root  255 Aug 12 08:52 manage.py
-rwxr-xr-x. 1 kyan kyan   99 Aug 11 18:46 requirements.txt

解決策を見つけました。-user1000:1000を追加するだけです。
またはdocker-compose.ymlを追加します

user: "1000:1000"
このページは役に立ちましたか?
0 / 5 - 0 評価