I am relatively new to docker. I want to setup a server that can serve multiple Lauterbach Debuggers using t32tcpusb. But unfortunately, if I serve them all with a single instance, then only one user can connect to one of the Lauterbachs.
As t32tcpusb does not support multiple instances, I want to containerize it.
(Running Ubuntu 20.04 LTS - Lauterbach is installed to ~/t32)
version: '3'
services:
t32:
image: alpine
command: /home/fileuser/t32/bin/pc_linux64/t32tcpusb
volumes:
- "/home/fileuser/t32:/home/fileuser/t32" #Pull-in the software
- "/dev/bus/usb/003/005:/dev/bus/usb/003/005" #Pull-in only one of the devices
#- "/dev/usb:/dev/usb" #For testing: Pull-in all devs
expose:
- 8455
ports:
- "8455:8455"
Running it like that results in
fileuser@fileserver:~/docker_test$ sudo docker-compose up
Recreating docker_test_t32_1 ... done
Attaching to docker_test_t32_1
t32_1 | exec /home/fileuser/t32/bin/pc_linux64/t32tcpusb: no such file or directory
(If I just prpend ls
to the command, it shows that the path itself is valid)
Is there anything obviously wrong with my compose file?
Is it feasible to just use a minimal image and pull-in the executables I need?
Stumbled into a solution for my specific issue.
Using image: ubuntu
instead of alpine
works better, especially, if the software provided is compiled to run on ubuntu :)
Then the SW will find all the libraries it will need.