不使用--privileged标志访问Docker容器中的多个设备

不使用--privileged标志访问Docker容器中的多个设备,docker,Docker,我可以在Docker容器中使用任意数量的设备(/dev/abc0,/dev/abc1,…)。如果我使用dockerrun--device/dev/abc0--device/dev/abc1将它们单独传递给容器,那么它们是可访问的。这里的复杂性在于,据我所知,无法将所有设备/dev/abc*传递到容器中 如果我改为使用docker run-v/dev装载/dev,我需要--privileged标志。我还没有发现一种特定的功能可与--cap add一起使用,该功能可启用没有--privileged的

我可以在Docker容器中使用任意数量的设备(
/dev/abc0
/dev/abc1
,…)。如果我使用
dockerrun--device/dev/abc0--device/dev/abc1
将它们单独传递给容器,那么它们是可访问的。这里的复杂性在于,据我所知,无法将所有设备
/dev/abc*
传递到容器中


如果我改为使用
docker run-v/dev
装载
/dev
,我需要
--privileged
标志。我还没有发现一种特定的功能可与
--cap add
一起使用,该功能可启用没有
--privileged
的设备。这可以做到吗?

再多做一点实验,就可以找到一个潜在的解决方案。如果
/dev/abc*
设备具有主要设备编号
123
,则可以通过以下方式访问这些设备(仅限):

docker run -v /dev --device-cgroup-rule='c 123:* rmw'