It's not a bad plan. If you want to and practice some sysadmin stuff, you could, for example, yeah, use Docker, but using Docker Compose (or if you can afford getting two more VMs, Docker Swarm).
For example you could define all your services in a single compose file, and set up the different overlay networks. Use traefik instead of nginx, and make use of Let's Encrypt autoconfiguration.
You may also set up monitoring with a Grafana+Prometheus stack.
Going further, you could read up on the 12 factor methodology which touches a bit on the scalability aspect. Here: 12factor.net/
If you set out to build something like this, feel free to reach out if you need help!
Docker Compose is definitely on my bucket list. I didn't write about it but I was actually planning to use it. I love the way you can easily configure everything with a single file, so convenient!
I've heard about traefik some time ago but eventually forgot about it, thanks for reminding me! I did some research and even found with has a web admin interface and learned a bit about the config structure... loving it!
Grafana and Prometheus scare me a little bit, I've used netdata in the past because it is so easy. I'll try to research about it and even try to add Docker data to Grafana.
Thank you very much for your suggestions, they were very helpful!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.