【问题标题】:why cant i do podman unshare on this directory为什么我不能在这个目录上做 podman unshare
【发布时间】:2022-01-15 15:50:48
【问题描述】:

我正在尝试让我的无根容器最终与有根容器共享一个卷:

我的音量:

podman volume create --driver local \
--opt type=volume \
--opt device=/home/_secrets/certbot/_certs \
certs

我如何使用具有 sudo 权限的用户创建容器(注意容器具有 root 用户):

podman run -d \
--name nginx.main -p 0.0.0.0:8081:8080 \
-v /home/avnav/app/_volumes/nginx_main:/etc/nginx \
-v /home/avnav/app/app_p1/homepage/templates/frontpage:/usr/share/nginx/html \
--security-opt label=disable \
-u root \
-v certs:/etc/nginx/_cert \
nginx

错误:容器安装卷证书时出错

好的...但是如果没有安装这个额外的 -v 证书,服务器可以正常工作并为我的 webapp 提供服务。

所以,我尝试更改所有权:

podman unshare ls -al $(pwd)

drwxr-xr-x 4 nobody nogroup 4096 Aug 19 14:30 .
drwxr-xr-x 3 nobody nogroup 4096 Aug 19 04:16 ..
drwxr-xr-x 4 nobody nogroup 4096 Aug 19 04:23 _certs
drwxr-xr-x 2 nobody nogroup 4096 Aug 19 14:35 _tokens

在 _certs 内:

drwxr-xr-x 4 nobody nogroup 4096 Aug 19 04:23 .
drwxr-xr-x 4 nobody nogroup 4096 Aug 19 14:30 ..
drwxr-xr-x 3 nobody nogroup 4096 Aug 19 04:58 etc
drwxr-xr-x 4 nobody nogroup 4096 Aug 19 04:23 var

有点奇怪,因为它确实拥有所有权,但无论如何......

podman unshare chown 1000:1000 -R $(pwd)

给了我一堆这些:

chown: changing ownership of '/home/_secrets/certbot/_certs': Operation not permitted

也许用 sudo??

sudo podman unshare chown 1000:1000 -R $(pwd)

Error: please use unshare with rootless

那么现在呢?

【问题讨论】:

  • 甚至 SElinux 甚至都没有运行我尝试使用 -v certs:/etc/nginx/_cert:z
  • 在我使用时有效:-v /home/_secrets/certbot/_certs:/etc/nginx/_cert \ 但我想使用共享卷...

标签: podman


【解决方案1】:

正常使用podman后 unshare chown 27:27 -R /tmp/database2;突然之间,我收到了相同的消息错误“错误:请使用 unshare with rootless”,所以我不得不直接与映射用户进行 chown,但很高兴找到根问题(这是我的解决方法;chown 165562:165562 -R / tmp/database2;当然,在您的情况下,uid 和 gid 可能不同)

如果你们有更好的解决方案,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-21
    • 2012-04-22
    • 2021-02-23
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 2022-10-18
    相关资源
    最近更新 更多