# ============================================================================= # Vikunja – environment variables # Copy this file to .env and fill in real values. The .env file is read # automatically by "docker compose" in the same directory. # ============================================================================= # ----------------------------------------------------------------------------- # 1. Core / Service # ----------------------------------------------------------------------------- # The URL browsers will use to reach Vikunja (no trailing slash). # This is mandatory when CORS is enabled (the default). PUBLIC_URL=http://localhost:3456 # A long, random secret used to sign JWT tokens. # Generate one with: openssl rand -hex 32 JWT_SECRET=REPLACE_ME_WITH_A_RANDOM_64_CHAR_HEX_STRING # IANA tz name – e.g. Europe/Lisbon, America/New_York, Asia/Tokyo TIMEZONE=Europe/Lisbon # Set to "false" after you have created all desired user accounts. ENABLE_REGISTRATION=true # ----------------------------------------------------------------------------- # 2. PostgreSQL # ----------------------------------------------------------------------------- DB_USER=vikunja DB_PASSWORD=REPLACE_WITH_A_STRONG_PASSWORD DB_NAME=vikunja # ----------------------------------------------------------------------------- # 3. SMTP / Mailer # ----------------------------------------------------------------------------- # --- Host & port ------------------------------------------------------------ # Common presets: # Gmail smtp.gmail.com 587 (STARTTLS) or 465 (SSL) # Outlook/M365 smtp-auth.outlook.com 587 # Postfix (local) 127.0.0.1 25 (set SMTP_FORCE_SSL=false, AUTH=none) # Mailgun smtp.mailgun.org 587 # Custom/self your.smtp.server 587 SMTP_HOST=smtp.gmail.com SMTP_PORT=587 # --- Credentials ------------------------------------------------------------ # For Gmail with 2-FA enabled, use an *App Password*, not your real password. SMTP_USER=your-email@gmail.com SMTP_PASSWORD=REPLACE_WITH_APP_OR_REAL_PASSWORD # --- Sender address --------------------------------------------------------- # The "From:" field in outgoing mails. Many providers require this to match # SMTP_USER or an authorised alias. SMTP_FROM=your-email@gmail.com # --- TLS / SSL options ------------------------------------------------------ # SMTP_FORCE_SSL – wraps the connection in TLS immediately on connect. # • true → typically paired with port 465 (implicit TLS / SMTPS) # • false → expects STARTTLS on port 587 (or plain on 25) SMTP_FORCE_SSL=false # SMTP_SKIP_TLS_VERIFY – skip server-certificate validation. # Set to true ONLY if you use a self-signed certificate. SMTP_SKIP_TLS_VERIFY=false # SMTP_AUTH_TYPE – authentication method the SMTP server expects: # plain – username + password in a single base64 blob (default) # login – username and password sent in two separate challenges # none – no authentication (e.g. local Postfix accepting anonymous relay) SMTP_AUTH_TYPE=plain # ----------------------------------------------------------------------------- # 4. Optional – host-side port mapping # ----------------------------------------------------------------------------- # The port exposed on the Docker host (maps to container port 3456). # Leave empty to default to 3456. HOST_PORT=3456