www-data用户无法通过Docker容器访问Virtualbox共享文件夹

cu6pst1q  于 2023-10-16  发布在  Docker
关注(0)|答案(1)|浏览(151)

我有一个运行在Windows 10主机上的Ubuntu服务器VM,其中外部硬盘驱动器上的文件夹被传递到挂载点/NextCloudStorage处的VM。我可以从我的普通用户和root用户访问这个文件夹,通过将我的普通用户添加到vboxsf用户组。
我的Docker Compose文件包含以下内容,以通过/NextCloudStorage传递到容器:

  1. volumes:
  2. - nextcloud:/var/www/html
  3. - .:/code
  4. - /NextCloudStorage:/NextCloudStorage

使用docker exec -it nextcloud-app-1 bash时,我可以使用cd /NextCloudStoragemkdir test1等命令与共享文件夹实时交互。
我的问题是在容器中运行的应用程序无法访问此文件夹,因为它以www-data的形式运行。ls命令将文件夹列为空文件夹,当尝试在文件夹中创建项目时,我得到错误"permission denied"
有人知道如何给予www-data用户访问此共享文件夹的权限吗?
很抱歉写了这么长的文章,但我不得不把它说出来!
谢谢你,谢谢

z4iuyo4d

z4iuyo4d1#

您可以尝试将www-data用户添加到vboxsf
为了实现这一点,我们需要弄清楚组ID。In the virtual machine run

  1. cat /etc/group

你会看到这样的东西

Then in your container,如果此组不存在,请创建它
在这种情况下,我们需要使用的gid是115

  1. groupadd --gid 115 vboxsf

接下来将此组添加到www-data user

  1. usermod -aG vboxsf www-data

更新:尝试以root身份在容器中运行以下命令

  1. chmod -R 777 /NextCloudStorage
展开查看全部

相关问题