esitarski / CrossMgr

Cyclo Cross Management Application
MIT License
41 stars 21 forks source link

Deploy as docker container #60

Open cclague opened 4 years ago

cclague commented 4 years ago

Is your feature request related to a problem? Please describe. Not sure on feasibility, but would it be possible to deploy using docker?

Describe the solution you'd like Docker deployment.

Describe alternatives you've considered I'm deploying using IoTEdge in Azure as part of a bigger solution and can deploy RaceDB in this way. Would be fantastic if could also distribute CrossMgr similarly.

Additional context Anything that makes setup easier increases my chances of actually being able to race!

mbuckaway commented 4 years ago

The short answer is: yes

The longer answer is that this would really only work for lInux in the container. With the suitable container and all the X-win libs, Crossmgr could start up and be told the x-server to connect to....and then display the program. The alternative, the user could start the program from the docker command line from within the container (ie. exec), and use the local display server.

As for running it in the cloud, it would be only useful for a hard wired connection to a high speed internet link. 4G would never work.

It would be useful to use, if you could provide more detail on your intended setup.

cclague commented 4 years ago

At the risk of being selfish - Linux is fine for me.

I've no desire at this point to run CrossMgr in the cloud, but am just using docker as a distribution method. Pre Covid we were running 4 different race series with two sets of timing kit. In the hope I can pass the day to day operation on, I'm looking at not needing to hold the kit myself, which necessitates being able to make changes remotely. Up until now, I've done this by FTPing files between a VM in the cloud and the Linux boxes on site. This works fine as far as shuttling database backups and results files around, but VMs are very expensive and (say) updating RaceDB or CrossMgr requires a manual setup. If I set up the on-site machines as IoTEdge devices connected to a Hub in Azure, I can use it to push containers and synchronise result files and databases which greatly reduces the workload and removes the need for a VM. I can handle everything else with Function Apps (auto loading race entries, moving results files etc). Should also make it faster and more resilient over a 4G connection.