# Public exposed port (only nginx is exposed) NGINX_PORT=8080 # Project data is always mounted from the repository root `./data`. # Only workspace root still needs an absolute host path. HOST_BOTS_WORKSPACE_ROOT=/opt/dashboard-nanobot/workspace/bots # Optional custom image tags BACKEND_IMAGE_TAG=latest FRONTEND_IMAGE_TAG=latest # Optional base images / mirrors PYTHON_BASE_IMAGE=python:3.12-slim NODE_BASE_IMAGE=node:22-alpine NGINX_BASE_IMAGE=nginx:alpine POSTGRES_IMAGE=postgres:16-alpine REDIS_IMAGE=redis:7-alpine # Python package index mirror (recommended in CN) PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple PIP_TRUSTED_HOST=pypi.tuna.tsinghua.edu.cn # Frontend package registry mirror (used by yarn, recommended in CN) NPM_REGISTRY=https://registry.npmmirror.com # Container timezone TZ=Asia/Shanghai # PostgreSQL bootstrap account. # These values are used by the postgres container itself. POSTGRES_SUPERUSER=postgres POSTGRES_SUPERPASSWORD=change_me_pg_super_password POSTGRES_BOOTSTRAP_DB=postgres # Dashboard application database account. # deploy-full.sh will call scripts/init-full-db.sh to create/update these idempotently. POSTGRES_APP_DB=nanobot POSTGRES_APP_USER=nanobot POSTGRES_APP_PASSWORD=change_me_nanobot_password DATABASE_POOL_SIZE=20 DATABASE_MAX_OVERFLOW=40 DATABASE_POOL_TIMEOUT=30 DATABASE_POOL_RECYCLE=1800 # Redis cache (managed by docker-compose.full.yml) REDIS_ENABLED=true REDIS_DB=8 REDIS_PREFIX=nanobot REDIS_DEFAULT_TTL=60 # Chat history page size for upward lazy loading (per request) CHAT_PULL_PAGE_SIZE=60 COMMAND_AUTO_UNLOCK_SECONDS=10 DEFAULT_BOT_SYSTEM_TIMEZONE=Asia/Shanghai # Panel access protection PANEL_ACCESS_PASSWORD=change_me_panel_password # Browser credential requests must use an explicit CORS allowlist. # If frontend and backend are served under the same origin via nginx `/api` proxy, # this can usually stay unset. Otherwise set the real dashboard origin(s). # Example: # CORS_ALLOWED_ORIGINS=https://dashboard.example.com # Max upload size for backend validation (MB) UPLOAD_MAX_MB=200 # Workspace files that should use direct download behavior in dashboard WORKSPACE_DOWNLOAD_EXTENSIONS=.pdf,.doc,.docx,.xls,.xlsx,.xlsm,.ppt,.pptx,.odt,.ods,.odp,.wps,.stl,.scad,.zip,.rar # Local speech-to-text (Whisper via whisper.cpp model file) STT_ENABLED=true STT_MODEL=ggml-small-q8_0.bin STT_MODEL_DIR=/app/data/model STT_DEVICE=cpu STT_MAX_AUDIO_SECONDS=20 STT_DEFAULT_LANGUAGE=zh STT_FORCE_SIMPLIFIED=true STT_AUDIO_PREPROCESS=true STT_AUDIO_FILTER=highpass=f=120,lowpass=f=7600,afftdn=nf=-20 STT_INITIAL_PROMPT=以下内容可能包含简体中文和英文术语。请优先输出简体中文,英文单词、缩写、品牌名和数字保持原文,不要翻译。