# AdventureLog — Advanced Deployment # Copy to .env.advanced: cp .env.advanced.example .env.advanced # Standard Deployment: use .env.example instead. # Docs: https://adventurelog.app/docs/configuration/environment_variables.html # ── Frontend ──────────────────────────────────────────── PUBLIC_SERVER_URL=http://server:8000 # Internal backend URL for SSR — keep as http://server:8000 ORIGIN=http://localhost:8015 BODY_SIZE_LIMIT=Infinity FRONTEND_PORT=8015 FRONTEND_URL=http://localhost:8015 # Public frontend URL (emails, redirects) # Optional: one public URL when frontend and backend share a domain (reverse proxy). # Derives ORIGIN, FRONTEND_URL, PUBLIC_URL, and CSRF_TRUSTED_ORIGINS unless set explicitly. # SITE_URL=https://adventurelog.example.com # ── Database ──────────────────────────────────────────── PGHOST=db POSTGRES_DB=database POSTGRES_USER=adventure POSTGRES_PASSWORD=changeme123 # ── Backend ───────────────────────────────────────────── SECRET_KEY=changeme123 PUBLIC_URL=http://localhost:8016 # Public backend URL (media, OAuth callbacks) CSRF_TRUSTED_ORIGINS=http://localhost:8016,http://localhost:8015 BACKEND_PORT=8016 DEBUG=False DJANGO_ADMIN_USERNAME=admin DJANGO_ADMIN_PASSWORD=admin DJANGO_ADMIN_EMAIL=admin@example.com # ═══════════════════════════════════════════════════════ # Optional — uncomment and edit as needed # ═══════════════════════════════════════════════════════ # ── Registration & auth ───────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/disable_registration.html DISABLE_REGISTRATION=False # DISABLE_REGISTRATION_MESSAGE=Registration is disabled for this instance of AdventureLog. # SOCIALACCOUNT_ALLOW_SIGNUP=False # FORCE_SOCIALACCOUNT_LOGIN=False # ACCOUNT_EMAIL_VERIFICATION=none # none | optional | mandatory # ── Performance ───────────────────────────────────────── # GUNICORN_WORKERS=2 # Default 2. Use 1 on small hosts; (2 x CPU) + 1 on larger servers. # ENABLE_RATE_LIMITS=True # Recommended for production. # ── Media storage (S3) ────────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/s3_storage.html # MEDIA_STORAGE=s3 # local (default) or s3 # MEDIA_STORAGE_LIMIT_MB=0 # 0 = unlimited # MEDIA_STORAGE_LIMIT_BYTES=0 # Overrides MB when set > 0 # AWS_ACCESS_KEY_ID= # AWS_SECRET_ACCESS_KEY= # AWS_STORAGE_BUCKET_NAME= # AWS_S3_ENDPOINT_URL= # R2: https://.r2.cloudflarestorage.com # AWS_S3_REGION_NAME=auto # AWS_S3_ADDRESSING_STYLE=path # AWS_S3_SIGNATURE_VERSION=s3v4 # AWS_S3_CUSTOM_DOMAIN= # Optional CDN/custom domain # AWS_QUERYSTRING_AUTH=true # AWS_QUERYSTRING_EXPIRE=3600 # AWS_S3_FILE_OVERWRITE=true # ── Google Maps ───────────────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/google_maps_integration.html # GOOGLE_MAPS_API_KEY= # ── Email (SMTP) ──────────────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/email.html # EMAIL_BACKEND=email # EMAIL_HOST=smtp.gmail.com # EMAIL_USE_TLS=True # EMAIL_PORT=587 # EMAIL_USE_SSL=False # EMAIL_HOST_USER= # EMAIL_HOST_PASSWORD= # DEFAULT_FROM_EMAIL= # ── Strava ────────────────────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/strava_integration.html # STRAVA_CLIENT_ID= # STRAVA_CLIENT_SECRET= # ── Umami analytics ───────────────────────────────────── # Docs: https://adventurelog.app/docs/configuration/analytics.html # PUBLIC_UMAMI_SRC=https://cloud.umami.is/script.js # PUBLIC_UMAMI_WEBSITE_ID=