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

标签 containers rhel7 podman

我在 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

最佳答案

如果您正在运行 Podman 并且您不是 root 用户并且您没有使用 sudo,即“rootless”,那么您或您的管理员必须在系统上启用用户命名空间才能使其完全工作。只有极少数命令(例如“podman version”)可以在没有设置用户命名空间的无根环境中工作。

您看到的错误必须由具有管理权限的人使用 sysctl user.max_user_namespaces=15000 之类的命令来处理。这将在系统上启用 15,000 个用户名空间。此外,需要在系统上安装 shadows-utils 包,并且/etc/subuid 和/etc/subgid 文件必须具有如下条目:

用户名:1​​00000:65536

每个用户都希望为他们启用用户名空间。

关于containers - 在没有 sudo 的情况下运行特权 podman(并且没有用户名空间),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56296932/

相关文章:

linux-containers - 如果有很多,Podman 如何删除所有退出的容器

docker - 将目录挂载到容器将无法与Podman一起使用

amazon-web-services - AWS ECS : How to communicate between services within ECS Cluster without using ALB? 有办法吗?

wpf - dockerize 一个 wpf 应用程序并使用它

reactjs - 在React Docker容器上的连接被拒绝

Postgresql 9.6 InitDB 失败

c++ - 标准容器是否提供一些缓存功能?

go - 无法加载 github.com/open-policy-agent/opa/capability : no Go source files

python-3.x - Python3 和 pip3 + 为 python2 安装的轮子也可以用于 python3

docker - 如何在 podman 容器中设置 gitlab-runner 以使用执行器选项 docker(使用 podman)