@Pandemonium

Как сделать работу Docker не под root?

Работаю на сервере не под root пользователем, пользователь добавлен в группу Docker. Из-под пользователя могу создавать и запускать контейнеры без sudo. Но при пробросе каталогов из докера, каталоги создаются с владельцем root и из-за это работа в них затруднена. Как сделать, чтобы владелец папок был пользователь?

Подробнее:
docker run -d \
    -p 80:80 \
    --name nginx \
    --restart always \
    -v /home/server/nginx/html:/usr/share/nginx/html \
    -v /home/server/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
    nginx


Например, при запуске контейнера с Nginx в каталоге home создается каталог server, server/nginx и server/nginx/html, и при этом, все три каталога принадлежат пользователю root – из-за этого я не могу через FTP положить в них никакие необходимые файлы, вариант в ручную каждый раз менять владельца всех каталогов не подходит. Как сделать, чтобы создавались с владельцем user, а не root?
  • Вопрос задан
  • 2387 просмотров
Пригласить эксперта
Ответы на вопрос 1
deepblack
@deepblack
Например так:
FROM ubuntu:xenial
RUN useradd -d /home/ubuntu -ms /bin/bash -g root -G sudo -p ubuntu ubuntu
RUN mkdir /opt/myvolume  && chown ubuntu /opt/myvolume
WORKDIR /home/ubuntu
VOLUME /opt/myvolume


Ещё можно посмотреть тут:
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы