docker工人 – 任何方式来访问主机的USB或串行设备?

上次我检查, docker没有任何手段让容器访问主机串口或USB端口。 我想知道是否有任何人在这里知道哪些允许这样做的技巧

有几个选项。 首先,正如@Mark所述,docker 1.2.0版(发布于2014/08)增加了--device标志,可用于访问USB设备 – 没有 – --privileged模式:

 docker run -t -i --device=/dev/ttyUSB0 ubuntu bash 

或者,假设您的USB设备可用于/dev/bus/usb主机上的驱动程序等,则可以使用特权模式和卷选项将其安装在容器中。 例如:

 docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb ubuntu bash 

使用当前版本的docker,你可以使用--device标志来实现你想要的,而不需要访问所有的USB设备。 举个例子,如果你想在你的docker容器中只访问/dev/ttyUSB0 ,你可以这样做:

 docker run -t -i --device=/dev/ttyUSB0 ubuntu bash