发布文档: 1. RELEASE_PREPARATION.md - 发布准备清单 - 发布内容清单 - 系统要求 - 构建步骤 - 发布检查清单 - 安装包制作 2. INSTALLATION_GUIDE.md - 详细安装指南 - 系统要求 - 快速安装步骤 - 详细安装流程 - 高级配置 - 故障排除 - m4promini 测试步骤 3. QUICK_REFERENCE.md - 快速参考卡片 - 一键安装命令 - 系统要求表格 - 关键路径 - 常用命令 - 故障排除 4. README.md - 项目主文档 - 项目简介 - 快速开始 - 功能特性 - 架构设计 - API 文档 - 版本历史 目标: - 安装到任何需要的系统 - 测试系统: m4promini - 交给 admin team 做成安装包 文档特点: - 一键安装脚本 - 详细步骤说明 - 故障排除指南 - 快速参考卡片
11 KiB
11 KiB
Release v0.1.0 准备文档
版本: v0.1.0
发布日期: 2026-10-12
目标系统: 任何 macOS/Linux 系统
测试环境: m4promini (macOS)
📦 发布内容
1. 核心文件
momentry_studio/
├── src/ # 前端源代码
│ ├── views/ # Vue 组件
│ ├── components/ # Vue 组件
│ ├── api/ # API 调用
│ ├── stores/ # 状态管理
│ └── main.ts # 入口文件
│
├── src-tauri/ # Tauri 后端
│ ├── src/ # Rust 源代码
│ │ ├── main.rs # 主程序
│ │ ├── db.rs # 数据库管理
│ │ ├── admin.rs # Admin 管理 (待实现)
│ │ ├── group.rs # Group 管理 (待实现)
│ │ ├── paths.rs # 动态路径
│ │ ├── proxy.rs # HTTP 代理
│ │ └── bin/
│ │ ├── proxy.rs # 代理服务器
│ │ └── user_tool.rs # 用户管理工具
│ ├── Cargo.toml # Rust 依赖
│ └── tauri.conf.json # Tauri 配置
│
├── public/ # 静态资源
├── package.json # Node.js 依赖
├── vite.config.ts # Vite 配置
└── tsconfig.json # TypeScript 配置
2. 配置文件
config/
├── admin_config.json.template # Admin 配置模板
└── .env.template # 环境变量模板
scripts/
├── install.sh # 一键安装脚本
├── generate_config.sh # 配置生成脚本
├── init_three_layer_db.sh # 三层架构初始化
├── check_db_dependencies.sh # 数据库依赖检查
├── check_user_isolation.sh # 用户隔离检查
├── check_three_layer.sh # 三层架构检查
└── start.sh # 启动脚本 (install.sh 生成)
3. 文档
docs/
├── DEPLOYMENT_CHECKLIST.md # 部署检查清单
├── DATABASE_SUMMARY.md # 数据库总结
├── DEFAULT_PASSWORD_SYSTEM.md # 密码系统说明
├── CLIENTVIEW_STORAGE_ARCHITECTURE.md # 文件存储架构
├── DATABASE_DEPENDENCIES.md # 数据库依赖
├── DATABASE_OPTIMIZATION.md # 数据库优化
├── USER_DATABASE_ISOLATION_FIX.md # 用户隔离修复
├── MARKBASE_THREE_LAYER_ARCHITECTURE.md # 三层架构设计
├── THREE_LAYER_IMPLEMENTATION_GUIDE.md # 实施指南
└── WORK_SUMMARY_20261012.md # 工作总结
4. 构建产物
release/
├── Momentry Studio.app/ # macOS 应用包
│ ├── Contents/
│ │ ├── MacOS/
│ │ │ ├── momentry-studio # 主程序
│ │ │ └── momentry-proxy # 代理服务
│ │ └── Resources/
│ │ └── icon.icns # 应用图标
│ └── Info.plist
│
├── momentry-studio_0.1.0_aarch64.dmg # macOS 安装镜像
└── README.txt # 安装说明
🎯 系统要求
开发环境
- Node.js: v18.0.0 或更高版本
- Rust: 1.77.2 或更高版本
- Cargo: 最新版本
- npm: v9.0.0 或更高版本
运行环境
必需服务
- PostgreSQL: 12+ (带 pgvector 扩展)
- Qdrant: 1.7+
- MongoDB: 5+
可选服务
- SMB: 用于文件共享
- SFTP: 用于远程访问
系统资源
- CPU: 4 核心或更高
- 内存: 8GB 或更高
- 存储: 100GB 或更高 (取决于文件数量)
🔨 构建步骤
1. 环境准备
# 安装 Node.js
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# 或在 macOS 上
brew install node@18
# 安装 Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
# 验证安装
node --version # v18.x
rustc --version # 1.77.2+
npm --version # 9.x
2. 克隆代码
# 从 Git 仓库克隆
git clone <repo_url> momentry_studio
cd momentry_studio
# 检出发布版本
git checkout v0.1.0
3. 安装依赖
# 安装 Node.js 依赖
npm install
# 安装 Rust 依赖 (自动)
cd src-tauri
cargo fetch
cd ..
4. 配置环境
# 复制配置模板
cp .env.template .env
cp config/admin_config.json.template config/admin_config.json
# 编辑配置
vim .env
# 或使用自动生成脚本
./scripts/generate_config.sh
5. 构建应用
# 构建前端
npm run build
# 构建 Rust 后端
cd src-tauri
cargo build --release
cd ..
# 或构建完整的 Tauri 应用
cargo tauri build
6. 验证构建
# 检查构建产物
ls -lh src-tauri/target/release/momentry-studio
ls -lh src-tauri/target/release/momentry-proxy
ls -lh src-tauri/target/release/user_tool
# 或检查 macOS 应用
ls -lh "release/Momentry Studio.app"
📋 发布检查清单
代码层面
- 所有硬编码已消除
- 动态路径系统完整
- 动态密码系统实现
- 用户管理工具可用
- 编译无错误无警告
配置层面
- .env.template 准备好
- admin_config.json.template 准备好
- 安装脚本可执行
- 配置生成脚本可用
文档层面
- 部署检查清单完整
- 数据库架构文档齐全
- 安装指南清晰
- 快速开始指南可用
测试层面
- 单元测试通过
- 功能测试通过
- 集成测试通过
- m4promini 环境测试 (待执行)
🚀 安装包制作
macOS DMG
# 使用 cargo tauri build 自动生成
cargo tauri build
# 输出位置
ls -lh src-tauri/target/release/bundle/dmg/
手动打包
# 创建发布目录
mkdir -p release/package
# 复制必要文件
cp -r src release/package/
cp -r src-tauri release/package/
cp -r public release/package/
cp -r config release/package/
cp -r scripts release/package/
cp -r docs release/package/
cp package.json release/package/
cp package-lock.json release/package/
cp vite.config.ts release/package/
cp tsconfig.json release/package/
cp .env.template release/package/
cp README.md release/package/
# 复制构建产物
cp src-tauri/target/release/momentry-studio release/package/
cp src-tauri/target/release/momentry-proxy release/package/
cp src-tauri/target/release/user_tool release/package/
# 打包
cd release
tar -czf momentry_studio_v0.1.0.tar.gz package/
# 或创建 zip
zip -r momentry_studio_v0.1.0.zip package/
📦 发布文件清单
必需文件
momentry_studio_v0.1.0/
├── src/ # 前端源代码
├── src-tauri/ # Rust 后端
├── public/ # 静态资源
├── config/ # 配置模板
│ ├── admin_config.json.template
│ └── .env.template
├── scripts/ # 脚本工具
│ ├── install.sh
│ ├── generate_config.sh
│ ├── init_three_layer_db.sh
│ ├── check_db_dependencies.sh
│ ├── check_user_isolation.sh
│ └── check_three_layer.sh
├── docs/ # 文档
│ ├── DEPLOYMENT_CHECKLIST.md
│ ├── DATABASE_SUMMARY.md
│ ├── DEFAULT_PASSWORD_SYSTEM.md
│ ├── CLIENTVIEW_STORAGE_ARCHITECTURE.md
│ ├── DATABASE_DEPENDENCIES.md
│ ├── DATABASE_OPTIMIZATION.md
│ ├── USER_DATABASE_ISOLATION_FIX.md
│ ├── MARKBASE_THREE_LAYER_ARCHITECTURE.md
│ ├── THREE_LAYER_IMPLEMENTATION_GUIDE.md
│ └── WORK_SUMMARY_20261012.md
├── momentry-studio # 主程序 (已编译)
├── momentry-proxy # 代理服务 (已编译)
├── user_tool # 用户管理工具 (已编译)
├── package.json # Node.js 依赖
├── package-lock.json # 依赖锁定
├── vite.config.ts # Vite 配置
├── tsconfig.json # TypeScript 配置
└── README.md # 安装说明
可选文件
├── release/
│ ├── Momentry Studio.app/ # macOS 应用包
│ └── momentry-studio_0.1.0_aarch64.dmg # macOS 安装镜像
│
├── data/ # 示例数据
│ ├── admin/
│ ├── groups/
│ └── users/
│
└── test/ # 测试脚本
├── test_api.sh
└── test_install.sh
🔄 版本信息
当前版本: v0.1.0
功能:
- ✅ 视频搜索和分析
- ✅ 人脸识别和管理
- ✅ 文件管理和上传
- ✅ 用户认证
- ✅ 三层架构设计 (文档完成)
- ✅ 动态路径系统
- ✅ 动态密码系统
已知问题
-
用户数据库隔离: 硬编码 demo.sqlite (需修复)
- 文档:
docs/USER_DATABASE_ISOLATION_FIX.md - 工作量: 2-3 天
- 文档:
-
遗留依赖: sqlx (PostgreSQL) 未使用
- 文档:
docs/DATABASE_OPTIMIZATION.md - 工作量: 1 天
- 文档:
-
三层架构: 设计完成,代码待实施
- 文档:
docs/THREE_LAYER_IMPLEMENTATION_GUIDE.md - 工作量: 3-5 天
- 文档:
下个版本计划 (v0.2.0)
- 实现三层架构代码
- 修复用户数据库隔离
- 移除 sqlx 遗留依赖
- 添加 Admin 管理界面
- 添加 Group 管理界面
- 完善权限系统
- 添加审计日志查看
🎯 发布目标
目标系统
-
m4promini (测试环境)
- macOS
- 用户: /Users/nextorageai
- 用途: 功能测试和验证
-
生产环境
- Linux/macOS
- 任意用户路径
- 用途: 生产部署
发布方式
-
源代码发布
- Git 仓库
- tar.gz 压缩包
- 完整文档和脚本
-
二进制发布
- macOS .app 应用包
- macOS .dmg 安装镜像
- Linux 二进制文件
-
文档发布
- 安装指南
- 部署检查清单
- API 文档
📞 支持
技术支持
- Issues: <repo_url>/issues
- 文档: docs/ 目录
- Wiki: <repo_url>/wiki
常见问题
Q: 如何安装到不同用户目录?
A: 使用动态路径系统,自动检测用户主目录,无需修改代码。
Q: 如何修改默认密码?
A: 使用 user_tool 或设置 MOMENTRY_DEFAULT_PASSWORD 环境变量。
Q: 需要哪些外部服务?
A: PostgreSQL, Qdrant, MongoDB。详见 docs/DATABASE_DEPENDENCIES.md。
准备状态: ✅ 代码和文档已准备好
测试状态: ⏳ 待在 m4promini 测试
发布状态: 📦 准备发布