在docker现有ubuntu映像中创建新用户和新组

问题描述

我有一个具有root登录访问权限的docker Ubuntu映像,我想让用户说xyz将其添加到“ root”组中,并使用新的用户名xyx登录到docker Ubuntu映像。 我是Docker的新手,请指导我。在此先感谢,我需要逐步说明,因为帖子中的大多数命令对我来说都不起作用。工作的人没有任何效果

解决方法

要创建一个新用户并用该用户登录,首先需要在Dockerfile中创建一个 newuser

示例Dockerfile。

FROM ubuntu:latest
RUN adduser xyz
ENTRYPOINT ["sleep","1000"]

现在要切换为用户 xyz ,您可以在adduser之后添加USER xyz,也可以在docker run命令中使用-u--user

示例命令:

从Dockerfile构建映像

 docker image build -t myubuntu .

使用新的Ubuntu图片创建容器。

如果不使用--user标志,则用户将是root

[root@tinu-dahiya ~]# docker run -d --name custom-box myubuntu
6eb37562ad13b96b076908a92937c72f1f92f7562b26d22c763ed64d1281522a
[root@tinu-dahiya ~]# docker exec custom-box whoami
root

如果使用--user标志,则用户为xyz

[root@tinu-dahiya ~]# docker run -d --name custom-box2 --user xyz myubuntu
50b37bec7a4d906bd30d66387e836e7d23da83b9b022791ae1058b36b4d29646
[root@tinu-dahiya ~]# docker exec custom-box2 whoami
xyz

希望现在您将清除该主题,并可以满足您的要求。