2026-03-01 16:26:03 +00:00
|
|
|
# Public exposed port (only nginx is exposed)
|
|
|
|
|
NGINX_PORT=8080
|
|
|
|
|
|
2026-04-13 08:36:58 +00:00
|
|
|
# Project data is always mounted from the repository root `./data`.
|
|
|
|
|
# Only workspace root still needs an absolute host path.
|
2026-03-01 16:26:03 +00:00
|
|
|
HOST_BOTS_WORKSPACE_ROOT=/opt/dashboard-nanobot/workspace/bots
|
|
|
|
|
|
|
|
|
|
# Optional custom image tags
|
|
|
|
|
BACKEND_IMAGE_TAG=latest
|
|
|
|
|
FRONTEND_IMAGE_TAG=latest
|
|
|
|
|
|
|
|
|
|
# Optional build acceleration for China network
|
|
|
|
|
# If you mirror upstream container images, replace these with your mirror registry image names.
|
|
|
|
|
PYTHON_BASE_IMAGE=python:3.12-slim
|
2026-03-01 17:39:59 +00:00
|
|
|
NODE_BASE_IMAGE=node:22-alpine
|
2026-03-01 16:26:03 +00:00
|
|
|
NGINX_BASE_IMAGE=nginx: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
|
|
|
|
|
|
2026-03-01 17:33:23 +00:00
|
|
|
# Frontend package registry mirror (used by yarn, recommended in CN)
|
2026-03-01 16:26:03 +00:00
|
|
|
NPM_REGISTRY=https://registry.npmmirror.com
|
|
|
|
|
|
2026-04-13 10:10:25 +00:00
|
|
|
# Database for deploy-prod.sh
|
|
|
|
|
# This mode now supports external PostgreSQL only.
|
|
|
|
|
# Before running deploy-prod.sh, initialize the target database explicitly with:
|
|
|
|
|
# scripts/sql/create-tables.sql
|
|
|
|
|
# scripts/sql/init-data.sql
|
2026-03-14 07:44:11 +00:00
|
|
|
DATABASE_URL=postgresql+psycopg://postgres:change_me@127.0.0.1:5432/dashboard
|
|
|
|
|
DATABASE_POOL_SIZE=20
|
|
|
|
|
DATABASE_MAX_OVERFLOW=40
|
|
|
|
|
DATABASE_POOL_TIMEOUT=30
|
|
|
|
|
DATABASE_POOL_RECYCLE=1800
|
2026-03-09 04:53:15 +00:00
|
|
|
|
2026-03-10 04:40:01 +00:00
|
|
|
# Redis cache (optional)
|
2026-03-09 04:53:15 +00:00
|
|
|
REDIS_ENABLED=true
|
|
|
|
|
REDIS_URL=redis://127.0.0.1:6379/8
|
2026-03-14 07:44:11 +00:00
|
|
|
REDIS_PREFIX=nanobot
|
2026-03-09 04:53:15 +00:00
|
|
|
REDIS_DEFAULT_TTL=60
|
|
|
|
|
|
2026-04-13 11:28:36 +00:00
|
|
|
# Default timezone injected into newly created bot runtime env (`TZ`).
|
|
|
|
|
# If unset, backend falls back to `TZ` and then `Asia/Shanghai`.
|
2026-03-19 15:30:33 +00:00
|
|
|
DEFAULT_BOT_SYSTEM_TIMEZONE=Asia/Shanghai
|
2026-03-14 07:44:11 +00:00
|
|
|
|
2026-04-13 11:28:36 +00:00
|
|
|
# Panel access protection (deployment secret, not stored in sys_setting)
|
2026-03-09 04:53:15 +00:00
|
|
|
PANEL_ACCESS_PASSWORD=change_me_panel_password
|
2026-03-13 06:52:32 +00:00
|
|
|
|
2026-04-13 11:28:36 +00:00
|
|
|
# Browser credential requests must use an explicit CORS allowlist (deployment security setting).
|
2026-04-03 15:00:08 +00:00
|
|
|
# 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
|
|
|
|
|
|
2026-04-13 11:28:36 +00:00
|
|
|
# Nginx upload entry limit (MB).
|
|
|
|
|
# The backend business limit is stored in `sys_setting.upload_max_mb`;
|
|
|
|
|
# if you change the DB value later, remember to sync this nginx limit too.
|
2026-03-11 12:55:42 +00:00
|
|
|
UPLOAD_MAX_MB=200
|
2026-03-13 06:52:32 +00:00
|
|
|
|
2026-03-11 17:20:57 +00:00
|
|
|
# Local speech-to-text (Whisper via whisper.cpp model file)
|
|
|
|
|
STT_ENABLED=true
|
|
|
|
|
STT_MODEL=ggml-small-q8_0.bin
|
2026-04-13 08:36:58 +00:00
|
|
|
STT_MODEL_DIR=/app/data/model
|
2026-03-11 17:20:57 +00:00
|
|
|
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=以下内容可能包含简体中文和英文术语。请优先输出简体中文,英文单词、缩写、品牌名和数字保持原文,不要翻译。
|