由于权限是ROOT的导致访问项目出现无权限情况一volumes:
- ./wwwroot:/home/wwwroot对应容器的目录权限/home # ls -ltotal 8
drwxr-sr-x 2 www-data www-data 4096 Jul 14 00:50 www-data
drwxrwxrwx 3 root root 4096 Aug 1 08:46 wwwroot情况二volumes:
- ./wwwroot:/home/www-data对应容器的目录权限/home # ls -ltotal 4
drwxrwxrwx 3 root root 4096 Aug 1 08:46 www-data容器本来就有目录www-data并权限也是www-data, 但为什么通过docker-compose编排启动后目录就成ROOT了?如何在使用docker-compose保证容器原来的权限呢?或者自定用户及权限?
2 回答
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
这个是对的,docker容器默认会以root权限运行。所以你的挂载目录的owner都会是root。
如果你不希望目录属主是root,必须在容器运行之后执行chown命令修改属主。你会发现很多以非root用户执行的docker镜像(比如mysql, postgresql等等)都会在entrypoint脚本加入这个操作
- 2 回答
- 0 关注
- 8226 浏览
添加回答
举报
0/150
提交
取消