Files
momentry_studio/RELEASE_PREPARATION.md
Momentry Studio 12943a3f07 docs: 准备 v0.1.0 发布文档
发布文档:
1. RELEASE_PREPARATION.md - 发布准备清单
   - 发布内容清单
   - 系统要求
   - 构建步骤
   - 发布检查清单
   - 安装包制作

2. INSTALLATION_GUIDE.md - 详细安装指南
   - 系统要求
   - 快速安装步骤
   - 详细安装流程
   - 高级配置
   - 故障排除
   - m4promini 测试步骤

3. QUICK_REFERENCE.md - 快速参考卡片
   - 一键安装命令
   - 系统要求表格
   - 关键路径
   - 常用命令
   - 故障排除

4. README.md - 项目主文档
   - 项目简介
   - 快速开始
   - 功能特性
   - 架构设计
   - API 文档
   - 版本历史

目标:
- 安装到任何需要的系统
- 测试系统: m4promini
- 交给 admin team 做成安装包

文档特点:
- 一键安装脚本
- 详细步骤说明
- 故障排除指南
- 快速参考卡片
2026-10-12 15:14:07 +08:00

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

功能:

  • ✅ 视频搜索和分析
  • ✅ 人脸识别和管理
  • ✅ 文件管理和上传
  • ✅ 用户认证
  • ✅ 三层架构设计 (文档完成)
  • ✅ 动态路径系统
  • ✅ 动态密码系统

已知问题

  1. 用户数据库隔离: 硬编码 demo.sqlite (需修复)

    • 文档: docs/USER_DATABASE_ISOLATION_FIX.md
    • 工作量: 2-3 天
  2. 遗留依赖: sqlx (PostgreSQL) 未使用

    • 文档: docs/DATABASE_OPTIMIZATION.md
    • 工作量: 1 天
  3. 三层架构: 设计完成,代码待实施

    • 文档: docs/THREE_LAYER_IMPLEMENTATION_GUIDE.md
    • 工作量: 3-5 天

下个版本计划 (v0.2.0)

  • 实现三层架构代码
  • 修复用户数据库隔离
  • 移除 sqlx 遗留依赖
  • 添加 Admin 管理界面
  • 添加 Group 管理界面
  • 完善权限系统
  • 添加审计日志查看

🎯 发布目标

目标系统

  1. m4promini (测试环境)

    • macOS
    • 用户: /Users/nextorageai
    • 用途: 功能测试和验证
  2. 生产环境

    • Linux/macOS
    • 任意用户路径
    • 用途: 生产部署

发布方式

  1. 源代码发布

    • Git 仓库
    • tar.gz 压缩包
    • 完整文档和脚本
  2. 二进制发布

    • macOS .app 应用包
    • macOS .dmg 安装镜像
    • Linux 二进制文件
  3. 文档发布

    • 安装指南
    • 部署检查清单
    • 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 测试
发布状态: 📦 准备发布