在没有sudo的情况下运行特权的podman(并且没有用户名空间)

时间:2019-05-24 17:10:01

标签: containers rhel7 podman

我在RHEL 7.6上安装了podman,并且可以使用sudo运行普通的docker命令

sudo podman run hello-world

有没有一种方法可以在不使用sudo的情况下运行而不使用用户名空间(类似于使用常规docker命令将用户添加到docker组中)?

我了解以非root用户身份运行时,podman使用用户名空间。但是我无法在计算机(LDAP等)上启用/设置suid

当前,以非root用户身份运行时,我得到了

user namespaces are not enabled in /proc/sys/user/max_user_namespaces
ERRO[0000] cannot re-exec process

1 个答案:

答案 0 :(得分:1)

如果您正在运行Podman,但您不是root用户,并且没有使用sudo(即“无根”),那么您或您的管理员必须在系统上启用用户名称空间,以使其能够正常运行。在没有建立用户名称空间的情况下,只有极少数命令(例如“ podman版本”)可以在无根环境中使用。

具有sysctl user.max_user_namespaces=15000之类的命令的具有管理特权的人必须解决您所看到的错误,该命令将在系统上启用15,000个用户名空间。另外,shadows-utils软件包将需要安装在系统上,并且/ etc / subuid和/ etc / subgid文件必须具有以下条目:

用户名:1​​00000:65536

每个要为其启用用户名空间的用户。