Files
bridzik/.env.example
T
2026-07-04 13:45:41 +02:00

31 lines
1.3 KiB
Bash

# Copy to .env and fill in real values before `docker compose -f docker-compose.prod.yaml up`.
# .env is gitignored -- never commit real secrets.
POSTGRES_USER=bridzik
POSTGRES_PASSWORD=bridzik
POSTGRES_DB=bridzik
# Comma-separated list of origins allowed to open a Socket.IO connection.
# Must be the public URL(s) the frontend is served from -- never "*" in prod.
CORS_ALLOWED_ORIGINS=https://bridzik.liptim.eu
# Shared secret for the self-hosted /api/admin/* stats endpoints.
ADMIN_TOKEN=tajneheslo
# pgAdmin login (UI bound to 127.0.0.1:8081 on the host -- access via SSH tunnel,
# never expose publicly since it has full access to the Postgres data).
PGADMIN_DEFAULT_EMAIL=admin@example.com
PGADMIN_DEFAULT_PASSWORD=zmen_ma
# Fernet key encrypting Player.totp_secret at rest. Generate with:
# python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
# Keep it stable across restarts/redeploys -- losing it locks every account
# out (their TOTP secret can no longer be decrypted).
ENCRYPTION_KEY=
# Optional: IP -> country for /api/track pageviews (see GEOIP_DB_PATH in
# docker-compose.prod.yaml). Place a .mmdb file (GeoLite2-City/Country from a
# MaxMind account, or a DB-IP/IP2Location Lite equivalent) at
# ./geoip/GeoLite2-City.mmdb next to docker-compose.prod.yaml. Left missing ->
# country is just recorded as "".