92 lines
3.1 KiB
Bash
92 lines
3.1 KiB
Bash
# ================================================
|
|
# IoT PreTester V3 - Docker Environment Variables
|
|
# ================================================
|
|
# Copy this file to .env and configure your values
|
|
# Command: cp .env.example .env
|
|
|
|
# ==================== GENERAL ====================
|
|
# Environment mode (production, development)
|
|
NODE_ENV=production
|
|
|
|
# ==================== DJANGO BACKEND ====================
|
|
# Django Debug Mode (set to False in production!)
|
|
DEBUG=False
|
|
|
|
# Django Secret Key (REQUIRED - generate a secure random key!)
|
|
# Generate with: python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
|
|
SECRET_KEY=change-this-to-a-secure-random-secret-key-min-50-chars
|
|
|
|
# Allowed Hosts (comma-separated list, use * for all)
|
|
# Example: localhost,example.com,192.168.1.100
|
|
ALLOWED_HOSTS=*
|
|
|
|
# ==================== CORS CONFIGURATION ====================
|
|
# CORS Allowed Origins (comma-separated list)
|
|
# Example: http://localhost:3000,https://frontend.example.com
|
|
CORS_ALLOWED_ORIGINS=http://localhost:3000
|
|
|
|
# ==================== DATABASE ====================
|
|
# Database path inside container (do not change unless you know what you're doing)
|
|
DATABASE_PATH=/app/data/db.sqlite3
|
|
|
|
# ==================== DJANGO SUPERUSER ====================
|
|
# Default admin credentials (change these!)
|
|
DJANGO_SUPERUSER_USERNAME=admin
|
|
DJANGO_SUPERUSER_EMAIL=admin@example.com
|
|
DJANGO_SUPERUSER_PASSWORD=change-this-secure-password
|
|
|
|
# ==================== INITIALIZATION ====================
|
|
# Initialize database with default manufacturers/device types
|
|
# Set to "false" after first run to avoid re-initializing
|
|
INIT_DATABASE=true
|
|
|
|
# ==================== GUNICORN CONFIGURATION ====================
|
|
# Number of worker processes (adjust based on CPU cores)
|
|
# Formula: (2 x CPU cores) + 1
|
|
GUNICORN_WORKERS=4
|
|
|
|
# Request timeout in seconds
|
|
GUNICORN_TIMEOUT=120
|
|
|
|
# Logging level (debug, info, warning, error, critical)
|
|
LOG_LEVEL=info
|
|
|
|
# ==================== PORTS ====================
|
|
# Backend port mapping (host:container)
|
|
BACKEND_PORT=8000
|
|
|
|
# Frontend port mapping (host:container)
|
|
FRONTEND_PORT=3000
|
|
|
|
# ==================== FRONTEND API URL ====================
|
|
# Backend API URL accessible from frontend
|
|
# For local development: http://localhost:8000/api
|
|
# For production: https://your-backend-domain.com/api
|
|
NEXT_PUBLIC_API_URL=http://localhost:8000/api
|
|
|
|
# ==================== OPTIONAL: POSTGRES ====================
|
|
# Uncomment if using PostgreSQL instead of SQLite
|
|
|
|
# POSTGRES_DB=iot_pretester
|
|
# POSTGRES_USER=iot_user
|
|
# POSTGRES_PASSWORD=secure_db_password
|
|
# POSTGRES_HOST=db
|
|
# POSTGRES_PORT=5432
|
|
|
|
# ==================== OPTIONAL: REDIS ====================
|
|
# Uncomment if using Redis for caching
|
|
|
|
# REDIS_HOST=redis
|
|
# REDIS_PORT=6379
|
|
# REDIS_PASSWORD=
|
|
# REDIS_DB=0
|
|
|
|
# ==================== SECURITY NOTES ====================
|
|
# 1. NEVER commit the .env file to version control!
|
|
# 2. Generate a strong SECRET_KEY for production
|
|
# 3. Change default admin password immediately
|
|
# 4. Use strong passwords for all services
|
|
# 5. Set DEBUG=False in production
|
|
# 6. Configure specific ALLOWED_HOSTS in production
|
|
# 7. Use HTTPS in production with proper SSL certificates
|