前言
最近在新电脑用 colima + docker 启动服务遇到了这样的报错
chown: changing ownership of '.': Permission denied
在网上搜索了很久,不管是google还是stack overflow都没有突破口,只要绑定了 volumes 就会报错,按照网上说的方法,一种是删除掉宿主机目录,让docker自动创建,另一种是宿主机目录直接 777,都没能解决问题,最后去官网看了docker-compose的完整配置注意到了一个 user 配置
解决方法
user参数的语法如下
services:your_service:user: "<user>[:<group>]"
<user>: 指定容器内进程的用户名。
<group>: 可选,指定容器内进程的用户组。
只要user的配置和宿主机目录配置的用户角色是同一个,就不会有权限问题
查看宿主机目录信息
ls -al
查看宿主机uid和gid信息
id
这就意味着在我的电脑只要配置user: "502:20"就能够通过权限限制问题