# Toonflow 部署指南
Toonflow 是一款 AI 短剧漫剧工具,利用 AI 技术将小说自动转化为剧本,并结合 AI 生成的图片和视频,实现高效的短剧创作。
版本:v1.1.8 | 许可:Apache-2.0 | 默认账号:\dmin\ / \dmin123\
1. 项目概览
| 项目 | 说明 |
|---|---|
| 源码仓库 | https://github.com/HBAI-Ltd/Toonflow-app |
| 技术栈 | Node.js 24.x, TypeScript 5.x, Express 5, SQLite, Vercel AI SDK, Socket.IO, Electron 40, Sharp |
| 默认端口 | 10588 |
| 包管理器 | Yarn v1 |
| 构建工具 | esbuild |
| 前端 | 预构建静态文件 (data/web/) |
目录结构
Toonflow-app/
├── src/ # 后端 TypeScript 源码
│ ├── app.ts # 入口文件
│ ├── routes/ # API 路由
│ └── ...
├── scripts/
│ ├── main.ts # Electron 主进程
│ └── build.ts # esbuild 构建脚本
├── data/
│ ├── serve/app.js # 编译后的生产入口
│ ├── web/ # 预构建前端静态文件
│ ├── models/ # ONNX 向量模型
│ ├── skills/ # AI Agent 技能提示词
│ └── vendor/ # AI 供应商配置
├── Dockerfile
├── electron-builder.yml
└── package.json
2. 环境要求
| 依赖 | 版本要求 |
|---|---|
| Node.js | >= 23.11.1(推荐 24.x) |
| Yarn | v1(Classic) |
| 内存 | >= 2GB |
| 磁盘 | >= 10GB(含模型文件) |
3. Docker 部署
构建镜像
ash
git clone https://github.com/HBAI-Ltd/Toonflow-app.git
cd Toonflow-app
docker build -t toonflow .
Dockerfile 基于 \
ode:24-bookworm-slim\,安装 Python3 + make + g++ 用于编译 native 模块,自动剔除 Electron 依赖。
运行容器
ash
docker run -d --name toonflow -p 10588:10588 -v toonflow-data:/app/data --restart unless-stopped toonflow
生产模式
ash
docker run -d --name toonflow -p 10588:10588 -e NODE_ENV=prod -v toonflow-data:/app/data --restart unless-stopped toonflow yarn start
4. 云服务器手动部署
安装 Node.js 24.x + Yarn
ash
curl -fsSL https://deb.nodesource.com/setup_24.x | bash -
apt-get install -y nodejs
corepack enable
克隆、安装、构建
ash
git clone https://github.com/HBAI-Ltd/Toonflow-app.git
cd Toonflow-app
yarn install
yarn build
PM2 运行
安装 PM2 并创建 \pm2.json\,然后:
ash
pm2 start pm2.json
pm2 save
pm2 startup
5. 桌面应用(Electron)
构建安装包
ash
yarn build
yarn dist:win # Windows .exe
yarn dist:mac # macOS .dmg
yarn dist:linux # Linux .AppImage
开发模式
ash
yarn dev:gui # Electron + 后端
yarn dev:gui-vite # 带 Vite 热更新
6. GitHub Actions CI/CD
推送 \main\/\dev\ 分支自动触发 6 平台并行构建测试。推送 \*\ 标签自动发布 Release:
ash
git tag v1.1.8
git push origin v1.1.8
7. 环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
| \NODE_ENV\ | \prod\ 生产 / \dev\ 开发 | \dev\ |
| \PORT\ | 服务端口 | \10588\ |
| \OSSURL\ | 静态资源 URL | 无 |
| \VITE_DEV\ | 设为 \1\ 启用 Vite 热更新 | 无 |
8. 常见问题
better-sqlite3 编译失败:安装 python3 make g++。
Docker 构建慢:使用国内镜像源(Dockerfile 已配置 npmmirror.com)。
修改端口:\PORT=8080 yarn start\。
数据备份:定期备份 \data/\ 目录,尤其是 *.sqlite\ 数据库文件。
更多信息请访问 Toonflow GitHub 仓库