gpt4 book ai didi

docker - 使用绑定(bind)挂载运行容器化 MongoDB

转载 作者:行者123 更新时间:2023-12-02 18:13:35 26 4
gpt4 key购买 nike

我在 OCI 容器 (docker.io/library/mongo) 中运行 MongoDB。我想在/data/db 的容器内挂载一个主机目录(Kubernetes 用语中的 hostPath 挂载)。我在 Fedora Silverblue(具有相同 CLI 的 Docker 替代方案)上使用 Podman,但我认为问题不在于 Podman 或 Silverblue 不兼容。

使用:

podman run --name container_name -p=27017:27017 --mount type=bind,source=/path/to/dir,target=/data/db -d mongo

或者
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

关于docker - 使用绑定(bind)挂载运行容器化 MongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59557837/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com