首页/云/Docker 容器速查/docker run --device 最小设备授权
资源与安全50 条

docker run --device 最小设备授权

按最小必要原则把宿主设备节点映射进容器:默认权限 rwm,只读需求显式写 :r;动态设备用 --device-cgroup-rule 控制范围。

Docker 容器速查云更新于 2026-10-12
用途设备节点透传
语法--device=/dev/xxx[:/dev/yyy][:r|w|m]
动态设备--device-cgroup-rule='c 189:* rmw'

示例

示例
docker run --rm --device=/dev/ttyUSB0:/dev/ttyUSB0:r alpine ls -l /dev/ttyUSB0
docker run -d --device-cgroup-rule='c 189:* rmw' --name usb usb/collector:1.0
把设备给容器等于把该硬件的控制面交给容器内进程,评估仍以最小集为原则。

易错点

  • 不写权限位默认 rwm,只读设备要显式 :r,否则容器内可写
  • 整块存储或 /dev/mem 类设备尽量不给容器,授权范围越大越难审计

数据来源与参考

  • Docker 官方 CLI 参考:docker run --device / --device-cgroup-rule(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌