我以rperez
的身份登录了我的电脑(Fedora 24)。我已经设置了Docker以便能够运行这个用户,所以我正在运行一个容器,如下所示:
$ docker run -d \
-it \
-e HOST_IP=192.168.1.66 \
-e PHP_ERROR_REPORTING='E_ALL & ~E_STRICT' \
-p 80:80 \
-v ~/var/www:/var/www \
--name php55-dev reypm/php55-dev
注意$
符号表示我以非root用户身份运行命令(使用#
)。上面的命令创建了以下目录:/home/rperez/var/www
但所有者设置为root
我认为这是因为docker
在幕后以root
用户身份运行。
进行此设置后,我无法在~/var/www
下创建rperez
的文件,因为所有者为root
所以......
解决这个问题的正确方法是什么?我已阅读this和this,但不太有帮助。
任何帮助?
答案 0 :(得分:1)
正如所讨论的here,这是docker的预期行为。您可以在运行docker命令之前创建目标卷目录,或者在docker创建目录后将所有者更改为当前用户:
chown $(whoami) -R /path/to/your/dir