Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Permissions Docker卷,更改文件权限/所有者_Permissions_Docker_Docker Compose - Fatal编程技术网

Permissions Docker卷,更改文件权限/所有者

Permissions Docker卷,更改文件权限/所有者,permissions,docker,docker-compose,Permissions,Docker,Docker Compose,我正在docker容器中运行ruby on rails。如果生成类似于docker compose run rails rails g controller posts index show,则文件所有者是root。之后,我必须始终运行chown-R$用户,这很烦人 有人知道我如何解决这个问题吗,这样每个生成的文件的所有者就是主机用户吗?您可以使用docker compose run--user$user运行,但该用户必须已经存在于容器中,因此您必须在docker文件中创建它。您可以使用dock

我正在docker容器中运行ruby on rails。如果生成类似于
docker compose run rails rails g controller posts index show
,则文件所有者是root。之后,我必须始终运行
chown-R$用户
,这很烦人


有人知道我如何解决这个问题吗,这样每个生成的文件的所有者就是主机用户吗?

您可以使用
docker compose run--user$user
运行,但该用户必须已经存在于容器中,因此您必须在docker文件中创建它。

您可以使用
docker compose run--user$user
运行,但是该用户必须已经存在于容器中,因此您必须在Dockerfile中创建它。

请注意,用户名并不重要,用户ID才重要。因此,请在主机上找到用户的uid,并在Dockerfile中创建一个具有匹配uid的用户。请注意,用户名并不重要-用户ID很重要。因此,在主机上查找用户的uid,并在Dockerfile中创建具有匹配uid的用户。