# Copy this file to .env and fill in the values before running docker-compose. # NEVER commit .env to version control. # ── PostgreSQL ──────────────────────────────────────────────────────────────── POSTGRES_DB=lms_db POSTGRES_USER=lms_user # REQUIRED — choose a strong password POSTGRES_PASSWORD=change_me_strong_password # ── JWT ─────────────────────────────────────────────────────────────────────── # REQUIRED — generate with: python -c "import secrets; print(secrets.token_hex(32))" JWT_SECRET_KEY=change_me_generate_with_secrets_token_hex_32 # Token lifetime in minutes (default: 60) ACCESS_TOKEN_EXPIRE_MINUTES=60 # ── Ports ───────────────────────────────────────────────────────────────────── # Port exposed on the host for the Next.js frontend FRONTEND_PORT=3000 # ── Docker Hub images (optional — leave blank to build locally) ─────────────── # Set these on the target machine so docker compose pull works without building # BACKEND_IMAGE=your_dockerhub_username/lms-backend:latest # FRONTEND_IMAGE=your_dockerhub_username/lms-frontend:latest