当前位置: 首页 > 面试题库 >

Docker-一种访问主机USB或串行设备的方法?

强承望
2023-03-14
问题内容

上次我检查时,Docker没有任何方法允许容器访问主机串行或USB端口。有没有办法做到这一点?


问题答案:

有两种选择。您可以使用--device可用于访问无--privileged模式USB设备的标志:

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

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

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

请注意,顾名思义,它--privileged是不安全的 ,应谨慎处理。



 类似资料:
  • 上次我检查时,Docker没有任何方法让容器访问主机串行或USB端口。有没有什么诀窍可以让你这么做?

  • 我正在尝试从连接到主机模式下的Android手机的USB设备中获取一些数据。我可以发送数据到它,但读取失败。 我一直从方法获得,它指示某种错误,它总是超时。也许问题来自于连接配置,我试了几次(读作:试错),没有一次奏效,令人惊讶的是,我不需要任何配置来发送数据到设备。 编辑 还必须注意的是,我使用的电缆是micro-USB到micro-USB的,它只能以一种方式工作,即只有当插头A连接到电话和插头

  • 当USB设备连接到Android平板电脑时,会出现一个弹出窗口,要求用户许可。我想抑制它,因为客户端不想要它。我应该怎么做? 在代码中: 调用以授予 USB 设备临时访问权限。 这会弹出一个弹出窗口。默认情况下,如何禁止弹出窗口或授予用户访问权限?

  • 问题内容: 当我以普通用户身份运行容器时,我可以映射 和修改 主机文件系统上root拥有的目录。这似乎是一个很大的安全漏洞。例如,我可以执行以下操作: 现在,我的 主机 文件系统将在键入时执行命令(大多数情况下无害)。我不敢相信这是理想的行为,但是它正在我的系统中发生(debian延伸)。该命令具有普通权限(755,不是setuid)。 我想念什么? 可能需要澄清更多。目前,我对容器本身的作用或可

  • 我在本地机器(Mac)上工作,其中有一个名为sqlvm的遗留虚拟机(这意味着我可以通过http://sqlvm:从本地主机访问这个虚拟机)。现在,我在应该连接到vm的同一个本地主机(我的Mac)中设置了几个docker容器(使用docker-compose)。< code>pymysql会引发一个异常: 如何将外部的“sqlvm”公开给内部 Docker 网络? 编辑:我尝试在yml文件中为相关容