使用docker run --cap-add参数解决权限问题(无法使用gdb调试、无法date -s修改时间)

问题 在docker容器中的centos无法使用gdb调试

ptrace: Operation not permitted

解决方法 参考:https://stackoverflow.com/questions/42029834/gdb-in-docker-container-returns-ptrace-operation-not-permitted

在docker run 命令中加上参数--cap-add=SYS_PTRACE
docker run --cap-add=SYS_PTRACE ......
更多cap可查看手册
http://man7.org/linux/man-pages/man7/capabilities.7.html

还有不太优雅的做法不建议使用:通过–privileged解决 –privileged等效于–cap-add=ALL。

类似的问题还有docker机器上不能使用date -s修改时间

解决方式:

docker run  --cap-add=SYS_TIME --cap-add=SYS_PTRACE    ...
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章