- Traefik Proxy with Auto TLS Support
- Portainer (Container Management UI)
- Dozzle (Logger)
- PostgreSQL (Private Network)
- Redis (Private Network)
- Docker and Docker Compose installed
- Domain name with DNS configured
- Cloudflare account (if using Cloudflare)
htpasswd
utility (apache2-utils
package)
- Generate Basic Auth credentials
htpasswd -c -B -b users.htpasswd your_username your_password
Copy the generated hash from users.htpasswd
- Update Basic Auth in configuration
basicAuth:
users:
- "admin:$2y$10$pWij3ooPsrOieZs7SkIBw.sOwM/r90DqMI3nli6XGMSt799.v15zq" # Replace with your hash
- Configure ACME (Let's Encrypt) email
certificatesResolvers:
letsencrypt:
acme:
email: your_email@domain.com
storage: acme.json
- If using Cloudflare, set SSL/TLS encryption mode to "Full (strict)" in Cloudflare dashboard
- This is required for proper SSL handshake between Cloudflare and your server
- Install Make (if not installed)
# For Debian/Ubuntu
sudo apt-get install make
- Run the setup script
make setup
The setup script will automatically configure and start all services.