如何在docker中使用正确的权限在共享卷内创build一个文件夹?

我有一个docker集装箱的问题。

我使用的容器有apache + Mysql + Ubuntu系统,我想运行drupal。

我使用共享卷来共享所有的drupal文件与主机操作系统的备份目的。

但我遇到了一个问题,我无法使用正确的权限在共享文件夹中创build任何文件夹。

就像

mkdir example; chmod -R 777 example; 

但文件夹的权限仍然没有改变。

我怎样才能解决这个问题?

我有这个问题(mac os – > vagrant – > docker)。 不知道您是否可以轻松修复根本原因,但是帮助我的解决方法是:

  1. 最简洁的选项是将应用程序configuration为写入挂载主机目录之外的文件夹,最有可能是写入/tmp
  2. 当前面的选项不太可行时,可以尝试在映射的目录中添加一个挂载,例如-v /my_host_projects/my_drupal_project/:/my_drupal_project:ro -v /my_drupal_project/tmp_hardcoding_is_evil/ 。 虽然这感觉相当黑客。

你使用启动docker? 如果是这样,我认为你正在运行boot2docker问题587 。 基本上用来为boot2docker启动虚拟机的虚拟机不支持POSIX权限编辑。 这应该在您可能用于生产部署的Linux环境或VM中正常工作。 我猜测会让testing变得很痛苦吗?