Файлы томов Docker недоступны для записи, они записаны как root - PullRequest
0 голосов
/ 16 января 2019

У меня есть папка, /me/tmp, к которой я подключаю том докера: docker run -v /me/tmp/:/root/tmp/. Однако, когда мой контейнер Docker создает папку и файлы вместо каталога, например, /root/tmp/subdir/file.txt этот файл создан как root и не имеет прав записи для других групп или пользователей. Это означает, что вне контейнера я не могу редактировать или даже удалить этот файл /me/tmp/subdir/file.txt. Есть ли способ изменить права доступа или владельца файла без root-доступа или каким-либо образом избежать этого с самого начала?

Ответы [ 2 ]

0 голосов
/ 22 июля 2019

Вы можете запустить docker с отображением пользователя, поэтому любой файл, созданный с uid 0 (root в контейнере), автоматически сопоставляется с другим uid на хосте. Это обрабатывается двумя файлами /etc/subuid и /etc/subgid.

Прочтите официальные документы

0 голосов
/ 17 января 2019

Попробуйте запустить RUN chmod -R 777 /root/tmp/ или RUN chmod 777 /root/tmp/ в файле dockerfile, или перейдите в контейнер и введите chmod -R 777 /root/tmp или chmod 777 /root/tmp от имени пользователя root. -R для рекурсивного

...