极智开发 | docker内访问宿主机usb设备并支持热插拔

欢迎关注我的公众号 [极智视界],获取我的更多经验分享

大家好,我是极智视界,本文介绍一下 docker内访问宿主机usb设备并支持热插拔的方法。

邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:https://t.zsxq.com/0aiNxERDq

这篇文章比较简单,主要介绍一下 docker 内访问宿主机 usb 设备的方法。

在开发的过程中,我们可能会遇到需要在 docker 容器内访问宿主机的设备,比如需要访问宿主机的 usb 设备进行算法的加密等,最直接可能会想到的做法是在创建 docker 容器的时候把宿主机的 usb 设备给挂载进来,这样就可以在 docker 容器内直接 访问/共享 宿主机的 usb 设备了。没错,这里介绍的方法也正是如此。

在创建 docker 容器的时候配置 usb 设备挂载选项,比如:

sudo docker run -it --privileged --net=host --ipc=bridge --ipc=host --pid=host --name docker_name -v /dev/bus/usb:/dev/bus/usb -v /workspace:/workspace image_name /bin/bash

这里最主要的就是打开超级用户权限 --privileged,然后是挂载 usb 设备 -v /dev/bus/usb:/dev/bus/usb。这样其实已经就可以了,不信的话还可以验证一下,可以用 lsusb 列出识别到的 usb 设备。但是如果是直接使用 lsusb 是不行的,因为还需要先安装一下。使用下面的命令进行安装:

apt update
apt install linux-tools-generic hwdata

update-alternatives --install /usr/local/bin/usbip usbip /usr/lib/linux-tools/*-generic/usbip 20

然后就可以:

lsusb      # 列出识别到的usb设备

而且更加好的一点是,这样的方式是支持热插拔的

这样就大功告成了。

好了,以上分享了 docker 内访问宿主机 usb 设备并支持热插拔的方法,希望我的分享能对你的学习有一点帮助。


【极智视界】

极智开发 | docker内访问宿主机usb设备并支持热插拔​​​​​​​》

畅享人工智能的科技魅力,让好玩的AI项目不难玩。邀请您加入我的知识星球,星球内我精心整备了大量好玩的AI项目,皆以工程源码形式开放使用,涵盖人脸、检测、分割、多模态、AIGC、自动驾驶、工业等。不敢说会对你学习有所帮助,但一定非常好玩,并持续更新更加有趣的项目。https://t.zsxq.com/0aiNxERDq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极智视界

你的支持 是我持续创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值