# Copy this file to .env and replace placeholder values. # Discord Bot Configuration DISCORD_TOKEN=your_discord_bot_token_here CLIENT_ID=your_discord_client_id_here # Your server ID (used in the setup tutorial; slash commands register globally via CLIENT_ID). GUILD_ID=your_discord_guild_id_here OWNER_IDS=your_discord_id_here (optional) # Bot Runtime Configuration NODE_ENV=production LOG_LEVEL=warn LOG_TO_FILE=false SENTRY_DSN= # Web/API Configuration PORT=3000 WEB_HOST=0.0.0.0 PORT_RETRY_ATTEMPTS=5 CORS_ORIGIN=* # PostgreSQL Configuration (Primary Database) # Railway: use the private POSTGRES_URL / DATABASE_URL variable (includes SSL). # Public proxy logs showing "invalid length of startup packet" or "SSL without ALPN" # are usually internet scanners — not your bot. POSTGRES_URL=postgresql://postgres:yourpassword@localhost:5432/titanbot POSTGRES_SSL= POSTGRES_HOST=localhost POSTGRES_PORT=5432 POSTGRES_DB=titanbot POSTGRES_USER=postgres POSTGRES_PASSWORD=yourpassword # PostgreSQL Pool/Timeout Settings POSTGRES_MAX_CONNECTIONS=20 POSTGRES_MIN_CONNECTIONS=2 POSTGRES_CONNECTION_TIMEOUT=10000 POSTGRES_IDLE_TIMEOUT=30000 POSTGRES_RETRIES=3 POSTGRES_BACKOFF_BASE=100 POSTGRES_BACKOFF_MULTIPLIER=2 # Migration & Schema Settings AUTO_MIGRATE=true POSTGRES_MIGRATION_TABLE=schema_migrations SCHEMA_VERSION=1 SCHEMA_VERSION_LABEL=baseline-v1 # Backup/Restore Script Settings BACKUP_DIR=./backups BACKUP_RETENTION_DAYS=14 POSTGRES_RESTORE_URL= # Music (Lavalink + Riffy) — requires Lavalink v4 nodes # Default: loads public v4 SSL nodes from lavalink/nodes.json # Source: https://lavalink.darrennathanael.com/SSL/Lavalink-SSL/ # LAVALINK_NODES_FILE=lavalink/nodes.json # Optional: override nodes as JSON array (takes priority over nodes file) # LAVALINK_NODES=[{"host":"lavalink","port":2333,"password":"youshallnotpass","secure":false,"name":"Main"}] # Self-hosted single node fallback (used only if nodes file/env array are absent): # LAVALINK_HOST=localhost # LAVALINK_PORT=2333 # LAVALINK_PASSWORD=youshallnotpass # LAVALINK_SECURE=false # LAVALINK_NAME=Main LAVALINK_SEARCH_PLATFORM=ytmsearch LAVALINK_REST_VERSION=v4 # Optional Feature/API Keys TMDB_API_KEY=