我创建了一个包含Android SDK的Docker镜像,并试图在运行此图像的容器中公开我的Android手机.所以我使用了--privileged旗帜并安装了USB设备,如下所示:
$ docker run --privileged -v /dev/bus/usb:/dev/bus/usb -d -P my-android:0.0.1
Run Code Online (Sandbox Code Playgroud)
但是,当我运行ADB设备时,它没有显示USB设备:
ubuntu@d56b666be455:~/Android/Sdk/platform-tools$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
ubuntu@d56b666be455:~/Android/Sdk/platform-tools$
Run Code Online (Sandbox Code Playgroud)
容器内的lsusb列出了设备:
ubuntu@d56b666be455:~$ lsusb
...
Bus 002 Device 017: ID 04e8:6866 Samsung Electronics Co., Ltd GT-I9300 Phone [Galaxy S III] (debugging mode)
Run Code Online (Sandbox Code Playgroud)
但是,该设备在主机上可见:
? ./adb devices
List of devices attached
4d11abcd65b74045 device
Run Code Online (Sandbox Code Playgroud)
主机操作系统
$ uname -a
Linux ananya 3.16.0-33-generic #44~14.04.1-Ubuntu SMP Fri Mar …Run Code Online (Sandbox Code Playgroud)