如何仅将一个 USB 设备连接到 Docker 容器

How to connect only one USB device to a Docker container

我一直在使用 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

USB 设备在我的主机上的位置 /dev/bus/usb/:我正在使用两个 bus 001002 设备,它们都连接到 001 bus .

为什么 Docker 在 001 bus 上安装所有连接到主机的设备,而当我尝试只连接一个设备时?

我做错了什么吗?

我想通了。如果我们 运行 在特权模式下,所有 USB 总线都可供容器使用。

我们只需要从容器中删除不需要的总线。虽然卷已同步,但此删除不会影响 Docker 主机中的 USB 总线。