I have an embedded system development image contained in a Docker file. In order to flash the code I need to connect to the nodes via USB Serial (e.g. /dev/ttyACM0
)
The --device
option now allows exposing a /dev
to a container, for example:
docker run -t -i --device=/dev/ttyUSB0 ubuntu bash
(I found from this Stack Overflow answer.)
At the current moment, this is not possible with Docker. However, we are working on a 'privilege' mode that would allow a container to access devices like USB or GPU.
While not possible via Docker itself (see previous answer) using lxc-cgroup directly on the running container seems to do the trick for me:
sudo lxc-cgroup -n 0dd4c652d0740e5ddb6f80e6f2ec2c52dd6435b22c8114c000c58ca9703ebc62 devices.allow "c 166:* rwm"
166 stands for ttyACM, the device class.
The Docker id needs to be the complete one (via Docker inspect "ID").