87 lines
3.1 KiB
Plaintext
87 lines
3.1 KiB
Plaintext
# =============================================================================
|
|
# AngelaMos | 2025
|
|
# .env.example
|
|
# =============================================================================
|
|
# Copy this file to .env and update values for your environment
|
|
# =============================================================================
|
|
|
|
# =============================================================================
|
|
# HOST PORTS (change these to avoid conflicts between projects)
|
|
# =============================================================================
|
|
NGINX_HOST_PORT=8420
|
|
BACKEND_HOST_PORT=5420
|
|
FRONTEND_HOST_PORT=3420
|
|
POSTGRES_HOST_PORT=4420
|
|
REDIS_HOST_PORT=6420
|
|
|
|
# =============================================================================
|
|
# Application
|
|
# =============================================================================
|
|
APP_NAME=FullStack-Template
|
|
ENVIRONMENT=development
|
|
DEBUG=true
|
|
LOG_LEVEL=INFO
|
|
LOG_JSON_FORMAT=false
|
|
|
|
# =============================================================================
|
|
# Server (internal container settings)
|
|
# =============================================================================
|
|
HOST=0.0.0.0
|
|
PORT=8000
|
|
RELOAD=true
|
|
|
|
# =============================================================================
|
|
# PostgreSQL
|
|
# =============================================================================
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=postgres
|
|
POSTGRES_DB=app_db
|
|
POSTGRES_HOST=db
|
|
POSTGRES_CONTAINER_PORT=5432
|
|
|
|
DATABASE_URL=postgresql+asyncpg://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_CONTAINER_PORT}/${POSTGRES_DB}
|
|
|
|
DB_POOL_SIZE=20
|
|
DB_MAX_OVERFLOW=10
|
|
DB_POOL_TIMEOUT=30
|
|
DB_POOL_RECYCLE=1800
|
|
|
|
# =============================================================================
|
|
# Redis
|
|
# =============================================================================
|
|
REDIS_HOST=redis
|
|
REDIS_CONTAINER_PORT=6379
|
|
REDIS_PASSWORD=
|
|
|
|
REDIS_URL=redis://${REDIS_HOST}:${REDIS_CONTAINER_PORT}
|
|
|
|
# =============================================================================
|
|
# Security / JWT
|
|
# =============================================================================
|
|
SECRET_KEY=dev-only-change-this-in-production-minimum-32-characters-long
|
|
|
|
JWT_ALGORITHM=HS256
|
|
ACCESS_TOKEN_EXPIRE_MINUTES=15
|
|
REFRESH_TOKEN_EXPIRE_DAYS=7
|
|
|
|
# =============================================================================
|
|
# CORS (must match HOST PORTS above!)
|
|
# =============================================================================
|
|
# Format: http://localhost:<NGINX_HOST_PORT>,http://localhost:<FRONTEND_HOST_PORT>
|
|
# Update these if you change the host ports above
|
|
|
|
CORS_ORIGINS=http://localhost,http://localhost:8420,http://localhost:3420
|
|
|
|
# =============================================================================
|
|
# Rate Limiting
|
|
# =============================================================================
|
|
RATE_LIMIT_DEFAULT=100/minute
|
|
RATE_LIMIT_AUTH=20/minute
|
|
|
|
# =============================================================================
|
|
# Frontend (Vite)
|
|
# =============================================================================
|
|
VITE_API_URL=/api
|
|
VITE_API_TARGET=http://localhost:8000
|
|
VITE_APP_TITLE=My App
|