Как избежать двоеточия при добавлении устройства в Docker-контейнер? - PullRequest
0 голосов
/ 28 мая 2019
  1. Это нормально, чтобы добавить устройство с серийным идентификатором:

    docker run -it --rm --device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A101A9A7-if00-port0 -v /dev:/dev ubuntu /bin/bash
    
  2. Нельзя добавлять устройство, которое по последовательному пути:

    docker run -it --rm --device /dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0 -v /dev:/dev ubuntu /bin/bash
    

    Сообщает об ошибке:

    недопустимый аргумент "/dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0" для флага "--device": неверный формат для пути: / dev / serial /by-path/pci-0000:00:14.0-usb-0:8:1.0-port0
    См. «Docker run --help».

    Та же ошибка, если экранирующая строка для : следующая:

    docker run -it --rm --device /dev/serial/by-path/pci-0000\:00\:14.0-usb-0\:8\:1.0-port0 -v /dev:/dev ubuntu /bin/bash
    

Как я знаю, для bind mount мы теперь могли бы использовать что-то вроде --mount type=bind,source=/colon:path/test,destination=/data для обработки, см. this .

Итак, мой вопрос: для --device, что я мог сделать?

1 Ответ

0 голосов
/ 25 июня 2019

Ответь для себя, от этого обсуждения :

Похоже, что CLI не поддерживает экранирование двоеточий, в настоящее время единственный способ - создать ссылку на символ, например:

ln -s /dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0 /dev/serial/by-path/mydevice01
docker run -it --rm --device /dev/serial/by-path/mydevice01 -v /dev:/dev ubuntu /bin/bash

Это то, что я сделал в настоящее время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...