dashboard-nanobot/.env.prod.example

76 lines
2.7 KiB
Plaintext
Raw Normal View History

2026-03-01 16:26:03 +00:00
# Public exposed port (only nginx is exposed)
NGINX_PORT=8080
# REQUIRED absolute host paths.
# They must exist and be writable by docker daemon.
HOST_DATA_ROOT=/opt/dashboard-nanobot/data
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-03-10 04:40:01 +00:00
# Database (choose one: SQLite / PostgreSQL / MySQL)
# SQLite example:
# DATABASE_URL=sqlite:///${HOST_DATA_ROOT}/nanobot_dashboard.db
# PostgreSQL example:
2026-03-01 16:26:03 +00:00
# DATABASE_URL=postgresql+psycopg://user:password@127.0.0.1:5432/nanobot_dashboard
2026-03-10 04:40:01 +00:00
# MySQL example:
# DATABASE_URL=mysql+pymysql://user:password@127.0.0.1:3306/nanobot_dashboard
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-03-14 07:44:11 +00:00
# Chat history page size for upward lazy loading (per request)
CHAT_PULL_PAGE_SIZE=60
2026-03-19 15:30:33 +00:00
COMMAND_AUTO_UNLOCK_SECONDS=10
DEFAULT_BOT_SYSTEM_TIMEZONE=Asia/Shanghai
2026-03-14 07:44:11 +00:00
2026-03-09 04:53:15 +00:00
# Panel access protection
PANEL_ACCESS_PASSWORD=change_me_panel_password
2026-03-13 06:52:32 +00:00
2026-04-03 15:00:08 +00:00
# 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
2026-03-03 06:09:11 +00:00
# Max upload size for backend validation (MB)
2026-03-11 12:55:42 +00:00
UPLOAD_MAX_MB=200
2026-03-13 06:52:32 +00:00
2026-03-13 06:40:54 +00:00
# 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
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
STT_MODEL_DIR=${HOST_DATA_ROOT}/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=以下内容可能包含简体中文和英文术语。请优先输出简体中文,英文单词、缩写、品牌名和数字保持原文,不要翻译。