Permissions Docker--来自权限的卷
我是Docker的新手,所以我可能遗漏了一些东西,我的数据卷文件夹拥有Permissions Docker--来自权限的卷,permissions,docker,Permissions,Docker,我是Docker的新手,所以我可能遗漏了一些东西,我的数据卷文件夹拥有root 以下是我所做的(使用nginx反向代理): 我在Dockerfile图像中做了一个chown,但它看起来像是——来自的卷改变了这一点 我应该如何给予数据文件夹www-data所有权?理论上(): 如果在绑定装入卷之前先chown卷(在主机端),它将正常工作 在这种情况下,您可以执行以下操作: (假设101:101是容器中www-data用户的UID:GID) 请注意,这并不是您正在做的事情:您正在数据卷容器中装载一个
root
以下是我所做的(使用nginx反向代理):
我在Dockerfile图像中做了一个chown,但它看起来像是——来自的卷改变了这一点
我应该如何给予数据
文件夹www-data
所有权?理论上():
如果在绑定装入卷之前先chown
卷(在主机端),它将正常工作
在这种情况下,您可以执行以下操作:
(假设101:101
是容器中www-data
用户的UID:GID
)
请注意,这并不是您正在做的事情:您正在数据卷容器中装载一个主机文件夹(一个非常空的tianon/true
image),然后将该数据卷容器装载到一个常规容器中
不过,这可能会起作用。嗯,它起作用了。但是在本例中,我不认为使用数据卷容器有什么意义。我可以直接从webapp容器将数据卷装载到主机上。@Arthur我同意。我只是在关注你在问题中所做的。我仍然不知道它们在哪个用例中有用,但你解决了我的问题。谢谢@Arthur您将使用data volume容器作为容器来公开卷(),该卷可以装入其他容器中。其思想是完全抽象主机文件系统,并在专用容器中管理该数据。
# Data volume container
docker create -v <data path> --name <app>-data tianon/true
# Webapp container
docker run --volumes-from <app>-data --name <app> \
-e VIRTUAL_HOST=<url> \
<image> &
drwxr-xr-x 2 root root 4096 Dec 16 19:03 data
drwxr-xr-x 3 www-data www-data 4096 Dec 16 18:57 doc
drwxr-xr-x 2 www-data www-data 4096 Dec 16 18:57 images
mkdir /tmp/www
chown 101:101 /tmp/www
docker run -v /tmp/www:/var/www ubuntu stat -c "%U %G" /var/www