Why not just follow the official documentation?
Official docs are the right source for feature details and supported installation paths. This site focuses on the smaller operational questions around layout, updates, backups and what usually matters first on a modest VPS.
Do I need Docker for all of this?
No. These services can often run directly on the host. Docker Compose is used here because it makes small deployments easier to inspect, rebuild and move between machines.
When is nginx enough?
For many small setups, nginx is enough as the public edge: serve static assets, terminate TLS, pass requests to internal containers and keep simple host-based routing in one place.
How much RAM is enough for a small VPS?
1 GB RAM is enough for several narrow services if you avoid stacking too much at once. Once you add a Git forge, a database and monitoring together, 2 GB becomes a more comfortable floor.
Should I use one domain or separate subdomains?
Separate subdomains are usually easier to reason about. Each service gets a clear hostname, nginx rules stay short and migrations are less disruptive later.
What should I back up first?
Back up persistent volumes first, then the Compose files and environment values that describe how the service was deployed. Without the service state, rebuilding containers alone does not help much.
How often should I update self-hosted services?
A steady schedule beats long periods of neglect. Monthly updates are a practical baseline for small, low-risk services, with a quick read through release notes before each change.
Do I need monitoring from day one?
Not always. For one or two internal tools, logs and a basic uptime check can be enough at first. Monitoring becomes more important once multiple services share the same host.
Should I start with SQLite or a separate database?
Start with SQLite when the application supports it and the expected load is small. A separate database is useful when you already operate one or when the service is becoming shared team infrastructure.
What is the practical rollback strategy?
Keep the previous image tag, preserve the last known-good Compose file and take a quick backup before upgrade. For small services, that combination solves most rollback situations without extra machinery.