Running Several Client Apps on One VPS with Docker, Nginx and GitHub Actions
Small agencies and freelancers often juggle many small client projects, and paying for separate managed platforms or running Kubernetes quickly becomes costly and overbuilt. The author describes a simple setup on a single VPS, using a Docker Compose file per project, host-level Nginx as a reverse proxy, and shared database containers for MySQL, PostgreSQL and MongoDB. Apps bind only to localhost ports while Nginx alone handles public traffic, and each project gets separate prod and dev databases with dedicated users. The approach favors readability and low resource use over more complex tools like Traefik or self-hosted PaaS platforms. Deployments are automated through GitHub Actions on every push, with a port registry and a helper script keeping the setup manageable.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)
Log in to join the discussion and vote.
Log in