配置指南#
目录#
概述#
DLP3D Web Backend 使用灵活的配置系统,支持多种环境和部署场景。本指南涵盖了该服务所有可用的配置选项。
配置文件#
系统支持多个用于不同环境的配置文件:
| 文件 | 用途 | 环境 |
|---|---|---|
configs/community.py |
社区版本的 Docker 部署配置 | 容器化 |
configs/online.py |
生产环境配置 | 生产环境 |
配置文件结构#
每个配置文件包含以下设置:
数据库连接
服务端口和主机
日志级别
缓存设置
安全配置
环境变量#
以下环境变量可用于配置 DLP3D Web Backend 服务,对于 Docker 部署尤其重要:
应用数据库连接#
| 变量 | 描述 | 默认值 |
|---|---|---|
MONGODB_HOST |
MongoDB 服务器主机名 | mongodb |
MONGODB_PORT |
MongoDB 服务器端口 | 27017 |
MONGODB_DATABASE |
应用数据库名称 | web_database |
MONGODB_AUTH_DATABASE |
认证数据库名称 | web_database |
MONGODB_USERNAME |
用于数据库访问的用户名 | web_user |
MONGODB_PASSWORD |
用于数据库访问的密码 | web_password |
数据库引导(管理员访问)#
| 变量 | 描述 | 默认值 |
|---|---|---|
MONGODB_ADMIN_USERNAME |
用于数据库引导的 MongoDB 管理员用户名 | admin |
MONGODB_ADMIN_PASSWORD |
用于数据库引导的 MongoDB 管理员密码 | (empty) |
连接流程#
服务遵循两阶段连接过程以确保强健的数据库连接:
阶段 1:主连接尝试#
服务首先尝试使用应用凭据进行连接:
用户名:
MONGODB_USERNAME密码:
MONGODB_PASSWORD数据库:
MONGODB_DATABASE
阶段 2:失败时引导#
如果主连接失败(表示首次设置),服务会自动使用管理员凭据执行以下操作:
创建应用数据库:如果目标数据库不存在则创建
创建应用用户:创建一个在目标数据库上具有
readWrite权限的用户设置数据库结构:初始化必要的集合和索引
阶段 3:使用应用凭据重试#
引导成功后,服务使用应用凭据重试连接。
使用示例#
基本配置#
# 使用默认配置
python main.py
# 使用特定配置文件
python main.py --config_path configs/community.py
Docker 环境变量#
# 为 Docker 部署设置环境变量
export MONGODB_HOST=your_mongodb_host
export MONGODB_PORT=27017
export MONGODB_ADMIN_USERNAME=admin
export MONGODB_ADMIN_PASSWORD=your_admin_password
# 使用 Docker 运行
docker run -e MONGODB_HOST=your_mongodb_host \
-e MONGODB_ADMIN_PASSWORD=your_admin_password \
dlp3d/web_backend:latest
生产环境配置#
# 使用安全凭据的生产部署
export MONGODB_HOST=mongodb_hostname.namespace
export MONGODB_PORT=27017
export MONGODB_DATABASE=dlp3d_web_database
export MONGODB_USERNAME=dlp3d_web_user
export MONGODB_PASSWORD=secure_production_password
export MONGODB_ADMIN_USERNAME=admin
export MONGODB_ADMIN_PASSWORD=secure_admin_password
最佳实践#
安全考虑#
首次部署:初始只需配置管理员凭据
现有部署:正常操作只需要应用凭据
自动设置:服务在首次运行时会自动处理数据库和用户创建