开云体育

Locked JMRI in a Docker container #linux


 

I have recently set up a EX-CommandStation connected via USB to JMRI running on a headless RPi3b that I had laying around. And while I was quite happy with the idea of this setup, it was indeed slow (I guess the RPi3b is getting old).
?
As I already have a running docker setup I then thought that running JMRI in a docker container would be a good solution as no new hardware would be needed. I did some google search and to my surprise I could not find any existing solutions for running JMRI in a container. The only thing I found was this locked post from January? . However, this discussion then developed more towards a server-client implementation of JMRI rather than running the existing implementation of JMRI in a container.
?
Even though I do not have experience at all in building Docker images I decide to give it a try. Within a couple of days I was able to put together something that seems to work. But still needs some polishing (e.g. add an external mounted volume to permanently store config files, support for DCC hardware via USB etc.).
?
The container I built is based on Debian stable with XFCE4, TigerVNC and noVNC (a fork of ), to which I added Java 17 and JMRI 5.8. The idea is to run JMRI in a "headless" container (i.e. "no monitor attached") to which you can connect to and control using a web browser via noVNC, and that exposes the JMRI webserver and the WiThrottle server. This can be run in any existing docker environment (even some NAS support docker container) and without the need of dedicated hardware for JMRI.
I currently have it connected to a EX-CommandStation via Ethernet and all seems to work pretty well. At this time some additional development would be needed to connect to DCC hardware via USB as still will require to pass through to the container the USB port of the of he host (I'm sure this is possible, but I have not yet looked at it).
?
Is anybody interested in working on developing this further or even just in trying it out?
?
?
?
?
?

Join [email protected] to automatically receive all group messages.