Skip to content

βš™οΈ Environment VariablesΒΆ

These environment variables configure all Homelab services. Store sensitive values in your .env file and reference them in Docker Compose.

Variable Description Example
πŸ“‘ SYNOLOGY_BASIC_URL Base URL for Synology services https://synology.yourdomain.com
πŸ“‚ MOUNT_PATH_DOCKER_ROOT Docker volumes root path /mnt/docker
πŸ“§ EMAIL Primary contact email [email protected]
Variable Description Security
πŸ”‘ PG_PASS PostgreSQL database password πŸ”’ Sensitive
πŸ” AUTHENTIK_SECRET_KEY Autentik cryptographic key πŸ”’ Sensitive
πŸ› οΈ SUDO_PASSWORD_VSCODE VS Code container sudo password πŸ”’ Sensitive
Variable Description Required
πŸ“© MAIL_RECEIVER Alert notifications recipient [email protected]
πŸ“€ SMTP_PASSWORD Outbound mail server password πŸ”’ Yes
Variable Description Service
🌐 CLOUDFLARE_TOKEN Cloudflare API token πŸ”’ Tunnel/DNS
🚫 PI_HOLE_PASSWORD Pi-hole admin interface πŸ”’ DNS
Variable Description Scope
πŸ”‘ INITIAL_ADMIN_PASSWORD Default admin password Multiple services
πŸ•΅οΈβ€β™‚οΈ WATCHTOWER_HTTP_API_TOKEN Container update auth πŸ”’ Watchtower

Best Practices

  • Always use .env files for sensitive variables
  • Rotate credentials quarterly
  • Restrict permissions to 600
  • Never commit to version control

Sample .env File

# Core
SYNOLOGY_BASIC_URL=synology.yourdomain.com
MOUNT_PATH_DOCKER_ROOT=/mnt/docker

# Secrets
PG_PASS=strongpassword123
AUTENTIK_SECRET_KEY=changeme