开发时如何在docker上设置文件和目录权限

开发时如何在docker上设置文件和目录权限,docker,boot2docker,docker-volume,Docker,Boot2docker,Docker Volume,我正在用docker开发一个symfony应用程序。 我正在共享一个主机卷,它应该包含我的项目,该项目应该使用apache运行 docker run -d -ti --name web -p 80:80 -v /Users/Matteo/Documents/em3:/var/www/html/applications ubuntu /bin/bash 作为一个基本映像,我使用了ubuntu,并在其上安装了apache和PHP7。一切正常,但当我进入docker时: docker exec -

我正在用docker开发一个symfony应用程序。 我正在共享一个主机卷,它应该包含我的项目,该项目应该使用apache运行

docker run -d -ti --name web -p 80:80 -v /Users/Matteo/Documents/em3:/var/www/html/applications  ubuntu /bin/bash
作为一个基本映像,我使用了ubuntu,并在其上安装了apache和PHP7。一切正常,但当我进入docker时:

docker exec -it web /bin/bash

root@85a23559d01b:/var/www/html/applications/auth# app/console cache:clear --env=dev


  [Symfony\Component\Filesystem\Exception\IOException]
  Failed to remove directory "/var/www/html/applications/auth/app/cache/de~/jms_serializer": .
这可能是因为目录权限

root@85a23559d01b:/var/www/html/applications/auth/app# ls -al | grep cache

drwxr-xr-x 1 1000 staff   374 Oct 30 21:50 cache
chmod
不会改变任何东西,尽管:

root@85a23559d01b:/var/www/html/applications/auth/app# chmod g+w cache

root@85a23559d01b:/var/www/html/applications/auth/app# ls -al | grep cache
drwxr-xr-x 1 1000 staff   374 Oct 30 21:50 cache
我想我错过了什么。如中所述,任何帮助都将不胜感激

如果在Windows主机上使用Linux VirtualBox,则可以“轻松”复制此功能

[这里可能就是这种情况,使用
boot2docker
from,而不是及其Hyper-V]

cache:clear
永远无法删除
app/cache/dev_old
——但这可能是VirtualBox提供的共享文件夹系统存在的问题(在他们的论坛上阅读类似问题)

你必须升级


我想最好的方法是在我的docker机器上使用NFS。你同意吗?是的,我同意:它似乎要删除possible@Bertuz好的:我已经在答案中加入了这个参考,以便更直观。