1 - Выполнить команду docker с пользователем без полномочий root
Если это ваш случай и вы не хотите запускать команду docker с пользователем root, перейдите по этой ссылке .создайте группу Docker и добавьте в нее вашего текущего пользователя.
$ sudo groupadd docker
$ sudo usermod -aG docker $USER
2 - Выполните команды внутри Docker!с пользователем без полномочий root
Если я прав, вы хотите использовать пользователя не-root внутри докера, а не root!
UID, данный вашему пользователю в докере, связан собразы корневого докера, которые вы используете, например alphine
или ubuntu:xenial
, как упоминалось в этой статье
Но вы можете просто изменить пользователя в Docker, немного изменив его, как описано вваш Dockerfile
и добавьте нового пользователя и используйте его.например:
RUN adduser -D myuser
USER myuser
ENTRYPOINT [“sleep”]
CMD [“1000”]
затем в файле Docker, если вы получите в нем команду /bin/bash
и выполните команду id
, вы увидите, что идентификатор пользователя внутри Docker изменился.
Обновление:
Если у вас есть готовый к использованию Dockerfile, создайте новый Dockerfile
, например, его имя myDocker
, и вставьте в него код ниже:
from myDockerfile
RUN adduser -D myuser
USER myuser
ENTRYPOINT [“sleep”]
CMD [“1000”]
затем сохраните этот файл и соберите его:
$ docker build -t myNewDocker .
$ docker run myNewDocker <with your options>