gpt4 book ai didi

linux - 使用 docker for mac 在 docker 容器中公开 TTY 设备

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:44 27 4
gpt4 key购买 nike

我正在尝试将插入我的 mac 的 Arduino 暴露给我在 Docker for Mac 中运行的 linux 实例(没有虚拟机)。

Arduino 将自己公开为 /dev/tty.usbserialXXX。我正在使用基于 ubuntu 的 node docker 镜像。

我正在运行的命令是

$ docker run --rm -it -v `pwd`:/app --device /dev/tty.usbmodem1421 node bash
docker: Error response from daemon: linux runtime spec devices: error gathering device information while adding custom device "/dev/tty.usbmodem1421": lstat /dev/tty.usbmodem1421: no such file or directory.

如果我尝试使用 --privileged

$ docker run --rm -it -v `pwd`:/app --device /dev/tty.usbmodem1421 --privileged node bash
root@8f18fdbcf64d:/# ls /dev/tty.*
ls: cannot access /dev/tty.*: No such file or directory

什么都没有暴露!

我正在使用它来公开串行设备以进行测试 serial drivers在 Linux 中。

最佳答案

这里的问题很大程度上是因为您在您的 mac 上没有运行 Docker。您在 Mac 上运行 Linux VM,在其中运行 Docker。这意味着将 Linux VM 内的 /dev 树暴露给 Docker 很容易,但从 Mac 暴露设备就不太容易了,因为缺少管理程序的某种支持。

使用围绕 VirtualBox 构建的适用于 Mac 的遗留“Docker 工具箱”,应该可以将 USB 设备分配给运行 Docker 的 VirtualBox 主机(这将允许您将其暴露给 Docker 容器) .

This GitHub issue谈论这种特殊情况并提供指向有用文档的链接。

我不知道这种功能目前是否可用于较新的“Docker for Mac”包中使用的管理程序。

关于linux - 使用 docker for mac 在 docker 容器中公开 TTY 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40442284/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com