我有 2 个磁盘驱动器,一个 HDD 和 1 个 SSD。
我正在尝试将较小、较常用的文件拆分到 SSD 上,将较大、较不常用的文件拆分到 HDD 上。这个方法一直有效,我现在正在将另一个目录添加到 SSD 上
我在 docker-compose.yml 中有以下内容
volumes:
- ./html:/var/www/html
- ./data:/var/www/html/data
- ./preview:/var/www/html/data/appdata/preview/
底线(预览)是我正在添加的。
添加最后一行时我得到以下内容
ERROR: for container Cannot start service container: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\\"/path/to/preview\\\" to rootfs \\\"/var/lib/docker/overlay2/6cf2fbd3f765322b65074279115acc2d0243a2bd8356bf9211794c734b7f22ce/merged\\\" at \\\"/var/www/html/data/appdata/preview\\\" caused \\\"lstat /var/lib/docker/overlay2/6cf2fbd3f765322b65074279115acc2d0243a2bd8356bf9211794c734b7f22ce/merged/var/www/html/data/appdata: permission denied\\\"\"": unknown
ERROR: Encountered errors while bringing up the project.
我不能 100% 确定这个权限错误在哪里。我检查了 apparmor,检查了 3 个文件挂载的权限,看起来都正确。
在容器 /tmp 中挂载时目录挂载正确,所以我认为这与嵌套有关,有没有办法获取有关此的更多信息?
答案1
namei -l
在容器中有帮助。
Root 没有该目录下某条路径的 x 权限,因此无法挂载到该目录,向该目录添加 +x 可以解决该问题