在不使用sudo(也不使用用户命名空间)的情况下运行特权的Podman

7

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

sudo podman run hello-world

有没有一种不使用sudo、不使用用户名称空间的方法来运行它(类似于在使用常规docker命令时将您的用户添加到docker组)?

我明白,当作为非root用户运行时,podman使用用户名称空间。但是我无法在机器上启用/设置suid(LDAP等)。

当前,当作为非root用户运行时,我会得到以下信息:

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

10
如果您使用的是非root用户且没有使用sudo,也就是“无根”,并且正在运行Podman,则您或管理员必须在系统上启用用户命名空间才能使其完全工作。仅有极少数指令(例如“podman version”)可以在未设置用户命名空间的无根环境下正常工作。
出现的错误需要拥有管理员权限的人用像sysctl user.max_user_namespaces=15000这样的命令进行处理,该命令将在系统上启用15,000个用户名空间。此外,阴影实用程序包需要安装在系统上,/etc/subuid和/etc/subgid文件中还需要添加条目,例如:

username:100000:65536

每个想要为他们启用用户命名空间的用户都需要在这两个文件中添加这样的条目。

谢谢@tom-sweeny。您知道用户命名空间的设置是否可以与LDAP集成吗? - Tri Nguyen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接