最近需要在线上调试go代码,就弄了一个docker
docker run --rm -it \
-v /home/test:/app/src \
-w /app/src \
-e GOPROXY=https://goproxy.cn \
docker.io/golang \
dir \
go build main.go
运行的时候就报错了
后边查资料都是在说 modules 引入问题
我仔细看了一下 发现是 -v 没有映射进去
原因是 :CentOS7中的安全模块selinux把权限禁掉了,无法使用-v命令进行挂载
处理方式是 -v 后边加一行
–privileged=true
docker run --rm -it \
-v /home/alarm_task/test:/app/src \
--privileged=true \
-w /app/src \
-e GOPROXY=https://goproxy.cn \
docker.io/golang \
dir \
go build main.go
可以参考 传送门

在CentOS7中使用Docker调试Go代码时遇到挂载问题,由于Selinux的安全策略导致-v命令无法正常工作。解决方法是在Docker运行命令中添加`--privileged=true`选项,允许容器获取更多权限。这使得开发者能够成功地将主机目录挂载到Docker容器内进行代码调试。

被折叠的 条评论
为什么被折叠?



