我正在尝试将我连接到笔记本电脑的设备连接到我的docker实例.
具体来说,我有4个设备(两个iphone,两个android),我希望能够启动4个docker实例并将每个设备连接到一个实例.
我期望做的就像在ubuntu中那样简单
@H_404_10@docker run --privileged -v /dev/bus/usb:/dev/bus/usb -d -P my-android:0.0.1
但我的主机操作系统是Mac OS X,也是我正在创建的实例,因为我需要访问仪器工具.
但到目前为止,我读到在mac os x下,设备直接连接虽然没有安装usb.
这是我搜索iphone设备时得到的:
@H_404_10@ iPhone USB: Type: Ethernet BSD Device Name: en6 IPv4: Configuration Method: DHCP IPv6: Configuration Method: Automatic Proxies: Exceptions List: *.local,169.254/16 FTP Passive Mode: Yes
您知道如何将设备连接到docker实例吗?
谢谢!!!!
最佳答案
我在virtualbox docker-machine上安装了VirtualBox扩展包(支持USB 2.0和USB 3.0设备).
>将手机连接到主机系统.
@H_404_10@$ioreg -p IoUSB | grep SAMSUNG +-o SAMSUNG_Android@14100000
>使用virtualBox驱动程序创建一个docker机器(我已将其命名为
基础)
@H_404_10@docker-machine create --driver virtualBox base
>停止机器以启用VM上的USB控制器
@H_404_10@docker-machine stop base
@H_404_10@ docker-machine start base
– 将基本VM激活为docker host
@H_404_10@ eval $(docker-machine env base)
– 启动安装了usb设备的ubuntu容器
@H_404_10@ docker run -it --rm -v /dev/usb/bus:/dev/bus/usb ubuntu /bin/bash
– 安装usbutils只是为了演示与Android设备连接的lsusb
@H_404_10@ root@ce1e4be0bb73:/# apt-get update && apt-get install -y usbutils
>第一次运行lsusb(未显示设备)
@H_404_10@root@ce1e4be0bb73:/# lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
>显示我必须拔下插头的设备并重新插入我的手机,第二次运行lsusb
@H_404_10@root@ce1e4be0bb73:/# lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 04e8:6860 Samsung Electronics Co.,Ltd Galaxy (MTP) Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub