For reference, here is the repo where the Navitia team uses docker-compose as their prefered distribution medium. The docker-compose.yml file looks surprisingly simple, and we have far less moving parts then they. We only have a web server and a database server - at worst we could have a web server, an application server running django, and a database server, but even still it is less complex than theirs.
Indeed, searching for various combinations of "docker-compose", "django", "nginx", and "postgres" returns some great tutorials on the matter too, most of which are easier to follow along than the navitia repo:
I'm happy to see if I can get a first cut going of a:
Web container (running nginx as a reverse-proxy), connecting to a
Django container (running the application code), which connects to a
Postgres container (with a persistent volume).
It may seem like overkill, but I like that the Django container is separate. That way we can rebuild it when a new release comes out, but the web and postgres containers don't need to change (ever, essentially).
However, if you think that a single Docker container with these things bundled is preferable then we can look into that too.
I like that the Django container is separate. That way we can rebuild it when a new release comes out, but the web and postgres containers don't need to change (ever, essentially).
I totally agree!
The reason why I mentioned going for a single container is that I didn't find any free webservices where people can run these multiple container setups with docker-compose/swarm. Please let me know if you know of any.
Otherwise, we can maybe offer both options. I have a prototype(!) of the docker-compose solution working locally since it is easier. Need to push something when it is in better shape. So if there's really no free cloud services, I'd look into a single container setup as well.
I didn't find any free webservices where people can run these multiple container setups with docker-compose/swarm. Please let me know if you know of any.
Are you referring to free services such as Bitnami et al. with their app deployment platforms which make it easier to deploy web apps on the hosting provider of your choice (including paid hosts)?
Or are you talking about the equivalent of "AWS free tier" or the free credit that Google Cloud or Azure gives first time users, only specific to docker deploys rather than blank VMs which come with AWS EC2/Google Cloud/Azure/etc?