如何向具有 SUBUID/SUBGID 的 Docker 卷授予 www-data 写入权限?

如何向具有 SUBUID/SUBGID 的 Docker 卷授予 www-data 写入权限?

我在运行 docker 时使用 SUBUID 和 SUBGID,因此 docker 卷中的文件权限如下:

$> ls -la /var/lib/docker/231072.231072/volumes/docroot/_data/some.php
-rw-r--r-- 1 232071 232071 56 Jul 20 14:23 /var/lib/docker/231072.231072/volumes/docroot/_data/some.php

然后我使用以下命令启动容器:

docker run -d -v thevolume:/var/www/html container

如果我打算将该卷用于只读目的,它可以正常工作,但如果www-data需要具有写入权限怎么办?如何授予该卷的写权限?

我知道chown www-data如果我不使用 SUBUID/SUBGID,我可以在主机/卷上。对于 SUBUID/SUBGID,这不再那么容易了 - 我能想到的唯一方法是docker exec -it container /bin/bash进入容器并chown -R www-data从那里运行,这会更改卷中的 SUBUID,但是没有其他更复杂的方法可以做到这一点吗?

相关内容