My approach to self-hosting. Single node (no k8s or Docker Swarm).
- Docker/Compose
- Dockge: Docker compose stack-oriented manager. Alternative to portainer.
- Caddy: Reverse proxy with automatic HTTPS.
- caddy-docker-proxy: Caddy as a reverse proxy for Docker, via labels. Light alternative to Traefik.
- Tailscale: Private WireGuard network made easy. To access my server from anywhere, securely.
- Cloudflare Tunnel: To expose some services to the world.
- Reaction: Scan logs and take action. As an alternative to fail2ban.
- Don't share same network beteewn Caddy and rest of containers
- Use Caddy auto-https
- Authelia
-
reaction
to vaultwarden repeated wrong passwords -
reaction
to sub-domain enumeration - Tailscale split DNS