# ====================================================== # Homelab Automation Dashboard — Environment Variables # ====================================================== # Copy this file to .env and fill in the values. # DO NOT commit the .env file with real credentials! # --- General --- TZ="America/Montreal" DEBUG_MODE=NO # --- API Authentication --- # REQUIRED: Set a strong, unique API key API_KEY=CHANGE_ME_TO_A_STRONG_API_KEY # --- JWT Authentication --- # REQUIRED: Set a strong secret key (min 32 chars) JWT_SECRET_KEY=CHANGE_ME_TO_A_STRONG_SECRET_KEY_MIN_32_CHARS JWT_EXPIRE_MINUTES=60 # --- Database --- DATABASE_URL=sqlite+aiosqlite:///./data/homelab.db DB_PATH=./data/homelab.db # DB_ENGINE=mysql # MYSQL_HOST=mysql # MYSQL_USER=homelab # MYSQL_PASSWORD=CHANGE_ME # DB_AUTO_MIGRATE=true # --- Logging --- LOGS_DIR=./logs/Server_log DIR_LOGS_TASKS=./logs/tasks_logs # --- Ansible --- ANSIBLE_INVENTORY=./ansible/inventory ANSIBLE_PLAYBOOKS=./ansible/playbooks ANSIBLE_GROUP_VARS=./ansible/inventory/group_vars # ANSIBLE_CONFIG=/path/to/ansible.cfg # --- SSH --- SSH_USER=automation SSH_REMOTE_USER=automation SSH_KEY_DIR=~/.ssh SSH_KEY_PATH=~/.ssh/id_automation_ansible # --- CORS --- # Comma-separated list of allowed origins (no wildcard in production!) CORS_ORIGINS=http://localhost:3000,http://localhost:8008 # --- Notifications (ntfy) --- NTFY_BASE_URL=https://ntfy.sh NTFY_DEFAULT_TOPIC=homelab-events NTFY_ENABLED=true NTFY_MSG_TYPE=ERR NTFY_TIMEOUT=5 # NTFY_USERNAME= # NTFY_PASSWORD=CHANGE_ME # NTFY_TOKEN=CHANGE_ME # --- Terminal SSH Web --- TERMINAL_SESSION_TTL_MINUTES=30 TERMINAL_TTYD_INTERFACE=eth0 TERMINAL_MAX_SESSIONS_PER_USER=3 TERMINAL_SESSION_IDLE_TIMEOUT_SECONDS=120 TERMINAL_HEARTBEAT_INTERVAL_SECONDS=15 TERMINAL_GC_INTERVAL_SECONDS=30 TERMINAL_PORT_RANGE_START=7682 TERMINAL_PORT_RANGE_END=7699 TERMINAL_SSH_USER=automation TERMINAL_COMMAND_RETENTION_DAYS=30