Está bien agregar un dispositivo que por ID de serie:
docker run -it --rm --device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A101A9A7-if00-port0 -v /dev:/dev ubuntu /bin/bashEsto no está bien para agregar un dispositivo que por ruta serial:
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/bashReporta error:
argumento no válido "/dev/serial/by-path/pci-0000:00:14.0-usb-0:8:1.0-port0" para el indicador "--device": formato incorrecto para la ruta: /dev/serial/by- ruta/pci-0000:00:14.0-usb-0:8:1.0-puerto0
Consulte 'docker run --help'.
Mismo error si hace una cadena de escape para : como sigue:
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 Como sé, para bind mount , ahora podríamos usar algo como --mount type=bind,source=/colon:path/test,destination=/data para manejarlo, mira esto .
Entonces mi pregunta es: para --device , ¿qué podría hacer?
Responda por mí mismo, de esta discusión :
Parece que CLI no admite el escape de los dos puntos, actualmente la única forma es hacer un enlace de símbolo como el siguiente:
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/bashEsto es lo que hice actualmente.