虚拟机 vboxsf 文件夹权限导致 docker 容器中的 nginx 权限不足问题
作者:互联网
问题:mac 安装的 virtualbox 虚拟机,通过 vboxsf 文件共享系统将本机项目文件共享至虚拟机,虚拟机中通过 docker 容器运行了 nginx 项目,访问项目时返回 404,查看项目 nginx 错误日志:permission denied
。
解决:先查询虚拟机 vboxsf 用户组ID:
cat /etc/group
...
vboxsf:x:994:nginx,www-data # 记住 ID 994
...
我是通过 dockerfile 部署的,分别在 nginx 和 php 的 Dockerfile 文件中添加
# php 的 Dockerfile
RUN groupadd --gid 994 vboxsf # 添加与容器外对应 ID 的用户组
RUN usermod -aG vboxsf www-data # 将容器运行的用户分配到该组
# nginx 的 Dockerfile
RUN groupadd --gid 994 vboxsf
RUN usermod -aG vboxsf nginx
以上的
www-data
,nginx
用户均为默认用户,如有修改配置需要根据配置调整
重启容器解决!
标签:994,vboxsf,容器,虚拟机,nginx,RUN,权限 来源: https://www.cnblogs.com/silent-cxl/p/16435922.html