我一直在使用Docker来运行Android测试。我使用多个容器和Android设备并行运行测试,但在将USB设备重定向到Docker容器时我遇到了问题。
我正在安装设备,如:
docker run -it --name MVE1 --privileged -v /dev/bus/usb/001/023:/dev/bus/usb/001/023
我正在尝试只安装一个设备,但是当我在容器内运行adb
个设备时,它会列出连接到主机的所有设备。
即使使用--device option
也没有运气:
docker run -it --name MVE1 --device=/dev/bus/usb/001/023:/dev/bus/usb/001/023
我的主机/dev/bus/usb/
上USB设备的位置:我正在使用两个bus 001
和002
设备,它们都连接到001 bus
。< / p>
当我尝试连接一台设备时,为什么Docker会在001 bus
上挂载连接到主机的所有设备?
我做错了吗?
答案 0 :(得分:3)
我能够弄清楚这一点。如果我们以特权模式运行,则所有USB总线都可用于容器。
我们只需要从容器中删除不需要的总线。虽然卷是同步的,但此删除不会影响Docker主机中的USB总线。