【问题标题】:Docker Container USB AccessDocker 容器 USB 访问
【发布时间】:2022-11-16 22:39:52
【问题描述】:

我有一个用于 gps 的 python 脚本。在我的 python 脚本中,它检测连接了哪个串行端口。例如,它可以是 ttyACM0 或 ttyACM1。脚本检测串行端口然后启动 gps 功能。

我想用 docker-compose 将这个 gps 脚本容器化为最终用户的简单设置但是,在本地机器中,usb 设备被检测为 /dev/ttyACM0,但 gps 容器说它被检测为 /dev/ttyACM1。

当我在本地机器上执行 cat /dev/ttyACM0 时,会显示 gps 信息,但是当我在 docker 容器中输入命令行 cat /dev/ttyACM1 时,它会显示 cat: /dev/ttyACM1: No such device or address

全球定位系统泊坞窗文件

FROM python:3.8
WORKDIR /gps
RUN apt update -y && apt install libusb-1.0-0-dev -y
RUN pip3 install -U pip && pip3 install pynmea2==1.18.0 pyusb==1.2.1 pyserial==3.5

全球定位系统泊坞窗撰写

version: '3.7'

services:
  gps:
    build:
      context: docker
      dockerfile: Dockerfile_gps
    privileged: true
    volumes:
      - ./gps:/gps
    restart: always
    working_dir: /gps
    command: python3 gps_operations.py

【问题讨论】:

    标签: linux docker gps usb


    【解决方案1】:

    解决了这个问题。添加这些行解决了问题。

    environment:
      - UDEV=1
    devices:
      - '/dev:/dev'
    

    【讨论】:

      猜你喜欢
      • 2016-05-05
      • 2021-03-04
      • 2019-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      • 2018-08-09
      相关资源
      最近更新 更多