linux Docker容器USB访问

iyr7buue  于 2022-11-22  发布在  Linux
关注(0)|答案(1)|浏览(187)

我有一个gps的python脚本。在我的python脚本中,它检测连接的是哪个串行端口。例如,它可以是ttyACM 0或ttyACM 1。脚本检测串行端口,然后启动gps功能。
我想使用docker-compose将此gps脚本容器化,以便于最终用户进行设置。然而,在本地计算机中,usb设备被检测为/dev/ttyACM 0,但gps容器显示它被检测为/dev/ttyACM 1。
当我在我的本地机器中执行cat /dev/ttyACM0时,显示了gps信息,但当我在Docker容器中输入命令行cat /dev/ttyACM1时,显示为cat: /dev/ttyACM1: No such device or address
gps停靠文件

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

gps对接器组成

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
bf1o4zei

bf1o4zei1#

已解决问题。添加这些行已解决问题。

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

相关问题