问题: - 100+ 处硬编码路径 /Users/accusys - 无法在不同用户环境部署 - 配置文件路径固定 解决方案: 1. ✅ 创建 paths.rs 模块 - get_home_dir() - 获取用户主目录 - get_momentry_core_root() - Core API 根目录 - get_markbase_root() - MarkBase 根目录 - get_studio_root() - Studio 根目录 - get_storage_root() - 存储根目录 - 环境变量优先 > 用户主目录推断 2. ✅ 修改 main.rs - 移除所有硬编码路径 - 使用动态路径函数 - 支持环境变量配置 3. ✅ 创建配置模板 - admin_config.json.template - .env.template - 使用 {{HOME}} 占位符 4. ✅ 创建自动化脚本 - install.sh - 通用安装脚本 - generate_config.sh - 配置生成脚本 - 自动检测用户环境 特性: - ✅ 支持任意用户环境 - ✅ 自动检测用户主目录 - ✅ 环境变量优先级控制 - ✅ 一键安装部署 测试: - ✅ 编译通过 (cargo check) - ⚠️ 需要在新环境测试 使用方法: 1. 克隆项目 2. ./install.sh 3. 编辑 .env 4. npm run proxy 适用环境: - m5max48: /Users/accusys - m4promini: /Users/nextorageai - 任意 macOS 环境
107 lines
2.8 KiB
Plaintext
107 lines
2.8 KiB
Plaintext
# Momentry Studio - 环境变量模板
|
|
# 复制此文件为 .env 并根据实际环境修改
|
|
|
|
# ========================================
|
|
# 用户主目录(自动检测,通常不需要设置)
|
|
# ========================================
|
|
# HOME=/Users/your_username
|
|
|
|
# ========================================
|
|
# 项目根目录
|
|
# ========================================
|
|
# 默认: $HOME/momentry_core
|
|
MOMENTRY_CORE_ROOT=${HOME}/momentry_core
|
|
|
|
# 默认: $HOME/markbase
|
|
MARKBASE_ROOT=${HOME}/markbase
|
|
|
|
# 默认: $HOME/momentry_studio
|
|
MOMENTRY_STUDIO_ROOT=${HOME}/momentry_studio
|
|
|
|
# 默认: $HOME/momentry
|
|
MOMENTRY_ROOT=${HOME}/momentry
|
|
|
|
# 默认: $HOME/MarkBaseEngine
|
|
MARKBASE_ENGINE_ROOT=${HOME}/MarkBaseEngine
|
|
|
|
# ========================================
|
|
# 存储路径
|
|
# ========================================
|
|
# 默认: $HOME/momentry/var/sftpgo/data
|
|
STORAGE_ROOT=${HOME}/momentry/var/sftpgo/data
|
|
|
|
# 默认: $HOME/momentry/output
|
|
OUTPUT_DIR=${HOME}/momentry/output
|
|
|
|
# 默认: $HOME/momentry/backup
|
|
BACKUP_DIR=${HOME}/momentry/backup
|
|
|
|
# ========================================
|
|
# 数据库
|
|
# ========================================
|
|
# SQLite 数据库目录
|
|
MOMENTRY_DATA_DIR=${HOME}/momentry_studio/data/users
|
|
|
|
# PostgreSQL 连接字符串
|
|
DATABASE_URL=postgres://$(whoami)@localhost:5432/momentry
|
|
|
|
# Qdrant
|
|
QDRANT_URL=http://localhost:6333
|
|
QDRANT_API_KEY=your_qdrant_api_key_here
|
|
|
|
# Redis (可选)
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# ========================================
|
|
# API Keys
|
|
# ========================================
|
|
# Momentry Core API Key
|
|
MOMENTRY_API_KEY=your_momentry_api_key_here
|
|
|
|
# ========================================
|
|
# 工具路径
|
|
# ========================================
|
|
# Python (用于脚本)
|
|
PYTHON_PATH=/opt/homebrew/bin/python3.11
|
|
|
|
# FFmpeg (用于视频处理)
|
|
FFMPEG_PATH=/opt/homebrew/bin/ffmpeg
|
|
|
|
# ========================================
|
|
# 服务配置
|
|
# ========================================
|
|
# Core API 端口
|
|
MOMENTRY_SERVER_PORT=3002
|
|
|
|
# Studio Proxy 端口
|
|
STUDIO_PROXY_PORT=8888
|
|
|
|
# MarkBase 端口
|
|
MARKBASE_PORT=11438
|
|
|
|
# ========================================
|
|
# LLM 服务
|
|
# ========================================
|
|
# VLM Vision API
|
|
MOMENTRY_LLM_VISION_URL=http://localhost:8080/v1/chat/completions
|
|
|
|
# LLM Chat API
|
|
MOMENTRY_LLM_CHAT_URL=http://localhost:8080/v1/chat/completions
|
|
|
|
# ========================================
|
|
# 外部服务 URL
|
|
# ========================================
|
|
# Media Base URL
|
|
MEDIA_BASE_URL=https://wp.momentry.ddns.net
|
|
|
|
# Serve Base URL
|
|
SERVE_BASE_URL=https://m5wp.momentry.ddns.net/files
|
|
|
|
# ========================================
|
|
# 说明
|
|
# ========================================
|
|
# 1. 复制此文件: cp .env.template .env
|
|
# 2. 编辑 .env 文件,填入实际值
|
|
# 3. 加载环境变量: source .env
|
|
# 4. 运行配置生成: ./generate_config.sh
|
|
# 5. 启动服务: npm run proxy |