docker 中`--privileged` 和`--cap-add=all` 的区别
Difference between `--privileged` and `--cap-add=all` in docker
背景:我是运行一个docker容器,它需要load/remove一个内核模块,使连接到远程服务器的USB设备在主机上可用,然后我想在容器中可用。
当 运行 容器带有 —-privileged
并为 /lib/modules
和 /dev
绑定安装时有效。
现在我想删除特权模式,只允许最低限度的必要访问。我尝试 —-cap-add=all
作为开始,但这似乎还不够。 —-privileged
还允许什么?
设置特权应该修改:
- 能力:移除任何能力限制
- 设备:主机设备将可见
- seccomp:取消对允许的系统调用的限制
- apparmor/selinux:政策未应用
- cgroups:我不认为容器被限制在一个 cgroup 中
这是我的记忆,如果这不能说明您的问题,我可能会在代码中找到更多的信息。
背景:我是运行一个docker容器,它需要load/remove一个内核模块,使连接到远程服务器的USB设备在主机上可用,然后我想在容器中可用。
当 运行 容器带有 —-privileged
并为 /lib/modules
和 /dev
绑定安装时有效。
现在我想删除特权模式,只允许最低限度的必要访问。我尝试 —-cap-add=all
作为开始,但这似乎还不够。 —-privileged
还允许什么?
设置特权应该修改:
- 能力:移除任何能力限制
- 设备:主机设备将可见
- seccomp:取消对允许的系统调用的限制
- apparmor/selinux:政策未应用
- cgroups:我不认为容器被限制在一个 cgroup 中
这是我的记忆,如果这不能说明您的问题,我可能会在代码中找到更多的信息。