2015-01-16 6 views
1

Бегущие контейнеры занимают пространство как корень пользователь. Мое требование заключается в том, что контейнеры должны работать как some_user.Запуск контейнеров в качестве другого пользователя

Я проверил онлайн, но не смог получить лучшую ясность. Каждый форум говорит о другом. Каков правильный метод.

PS: Я запускаю докер на сервере, и это будет большое дело, чтобы перезапустить процесс докера. Так что если есть какой-либо метод, который будет непосредственно указывать во время запуска, это будет хорошо.

+0

Пользователь в группе докеров может запускать Docker без привилегий root, но группа докеров эквивалентна root. – user2915097

+0

@ user2915097, когда вы добавляете пользователя в группу докеров, вы разрешаете запускать docker-клиент без root, но клиент-докер отправляет команду на сервер докеров. Так что задавайте вопрос, как запустить сервер докеров от другого пользователя - не уверен, что это возможно. – ISanych

+0

Это может быть возможно с пользователем, не названным root, но с тем же uid и привилегиями – user2915097

ответ

0

Я нашел обходной путь для решения этой проблемы.

Данные для всех докеров хранятся в/var/lib/docker/devicemapper/devicemapper/data.

Поскольку эта папка установлена ​​на том пользователя root. Решение этого вопроса будет (установка)/var полностью на другое физическое местоположение.

telinit 1 
cp -pR /var /home/var 
mv /var /var.old 
ln -s /home/var /var 
telinit 2 
sudo rm -rf /var.old