retrobbs
retrobbs copied to clipboard
Dockerized retrobbs
Added files to build a docker container to run retrobbs. Can also get up and running faster with the requirements.txt file I've included if running normally.
Hi, I'm not familiar with Docker, but I see in the files that it 'exposes' the TCP port 6400. Does this means that a RetroBBS deployed from Docker would be restricted to that port, and changing it in config.ini would not be possible?
You can map any port you like through docker and leave the default to 6400 in the retrobbs config.ini. But that line could be removed from the Dockerfile too and you could still map any port you like to the container.
By using a docker container you can run retrobbs on any system and all of the dependencies are included in the container.
Clone the repo to a folder then do the following. Docker is required to be installed of course.
# docker build -t idolpx/retrobbs .
# sudo docker-compose up -d
# docker logs -f retrobbs
That will get the container built and run an instance with the default settings. You should be able to connect. The last command just lets you view the log as the container is running.
I did some tests and I found the following issues:
- Is missing SIDDump and therefore SID streaming doesn't work.
- Adding files to the user directories, or changing config.ini needs the image to be rebuilt.
- Rebuilding the image also overwrite files that are modified at runtime such as plugins/oneliner.json (which I recon shouldn't be in the repository anyways)
But, I notice that there's both a way to map host directories to the docker container, and to copy files from a container back to the host filesystem.
The missing SIDDump would be the biggest problem to resolve then.
Ok... I will add SIDDump to build. It does need some tweaking to be able to reconfigure things and persist data. I'll see what I can do with that. Otherwise it seems to work pretty good from my tests. It speeds up the process of getting retrobbs up and going. Maybe more people will set up their own instances when these issues are addressed. :)