我在 OCI 容器 (docker.io/library/mongo) 中运行 MongoDB。我想在容器内的 /data/db 处挂载一个主机目录(Kubernetes 术语中的 hostPath 挂载)。我在 Fedora Silverblue(具有相同 CLI 的 Docker 替代品)上使用 Podman,但我不认为问题在于 Podman 或 Silverblue 不兼容。
Using:
podman run --name container_name -p=27017:27017 --mount type=bind,source=/path/to/dir,target=/data/db -d mongo
or
podman run --name container_name -p=27017:27017 -v /path/to/dir:/data/db -d mongo
容器退出并显示以下日志:
cannot configure rootless cgroup using the cgroupfs manager
find: '/data/db': Permission denied
chown: changing ownership of '/data/db': Permission denied
容器中 mongo 用户的用户 ID 是 999,我尝试将主机的目录更改为该用户,但这没有帮助。我还尝试将主机的文件夹设置为具有全局读/写访问权限,但这同样没有帮助。
事实证明,添加relabel=shared
允许挂载目录。所以命令变成podman run --name container_name -p=27017:27017 --mount type=bind,destination=/data/db,relabel=shared -d mongo
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)