Commit 1e9c434e authored by yaoke.yk's avatar yaoke.yk

fix: document deployment and increase upload limit

parent cf0b0a24
# YaoAI Video
Single-repo workspace for an AI comic / short-drama production platform.
YaoAI Video 是一个面向 AI 漫剧、短剧与视频内容生产的创作平台仓库,当前采用单仓库结构,保留前端应用与后端服务两部分,方便持续开发、部署和项目展示。
This repository now keeps only the two main applications:
项目目标是把“从剧本到视频”的关键流程串起来,包括项目管理、角色与场景生成、分镜生成、素材管理、Agent 工作流,以及最终的视频任务编排与输出。
- Frontend: `doc/html`
- Backend: `yaoai-comic-studio`
仓库地址:
## Repository Layout
`https://github.com/yaoke602/yaoai-video`
## 核心能力
- AI 漫剧 / 短剧生产后台
- 项目、角色、场景、道具、分镜等内容管理
- AI 生成任务编排与状态追踪
- 多模块 Spring Boot 后端服务
- Vite 前端工作台
- Docker 一键打包与部署
## 仓库结构
```text
.
|-- doc/html # Vite frontend
|-- yaoai-comic-studio # Spring Boot multi-module backend
|-- docker-compose.yml # production-style deployment
`-- .env.example # deployment environment template
|-- doc/html # 前端工程(Vite)
|-- yaoai-comic-studio # 后端工程(Spring Boot 多模块)
|-- docker-compose.yml # 根目录发布态部署编排
`-- .env.example # 发布态环境变量模板
```
## Local Development
## 技术栈
- 前端:Vite、React、TypeScript、MUI、TanStack Query、Zustand
- 后端:Java 17、Spring Boot 3、MyBatis-Plus、Flyway、Redis
- 基础设施:MySQL、Redis、Docker Compose、Nginx
- AI / 媒体:火山引擎 Ark、TOS、FFmpeg
Backend dependencies:
## 本地开发
当前项目保留了已经跑通的开发方式,建议按下面顺序启动。
1. 启动后端依赖服务
```bash
cd yaoai-comic-studio
docker compose up -d
```
Backend build:
2. 编译后端
```bash
cd yaoai-comic-studio
mvn package -pl yaoai-bootstrap -am -DskipTests
```
Backend run:
3. 启动后端服务
```bash
cd yaoai-comic-studio
java -jar yaoai-bootstrap\target\yaoai-bootstrap-0.1.0-SNAPSHOT.jar
```
Frontend run:
4. 启动前端开发服务
```bash
cd doc/html
......@@ -48,58 +67,63 @@ npm install
npm run dev
```
Default development URLs:
默认开发访问地址:
- Frontend: `http://localhost:5173`
- Backend: `http://localhost:8080`
- Swagger: `http://localhost:8080/swagger-ui/index.html`
- 前端:`http://localhost:5173`
- 后端:`http://localhost:8080`
- Swagger`http://localhost:8080/swagger-ui/index.html`
## Production-Style Deployment
## Docker 一键部署
The root `docker-compose.yml` is intended for one-command deployment.
It builds both the frontend and backend images and starts MySQL + Redis.
根目录的 `docker-compose.yml` 用于发布态部署,会同时构建前端和后端镜像,并启动 MySQL 与 Redis。
1. Create an environment file:
1. 复制环境变量模板
```bash
cp .env.example .env
```
2. Fill in the required secrets in `.env`, especially:
2. 按需填写 `.env`
至少建议检查这些配置:
- `MYSQL_ROOT_PASSWORD`
- `MYSQL_PASSWORD`
- `VOLCENGINE_ARK_API_KEY`
- `VOLCENGINE_TOS_ACCESS_KEY`
- `VOLCENGINE_TOS_SECRET_KEY`
- `VOLCENGINE_TOS_BUCKET`
3. Start the deployment stack:
3. 启动发布态服务
```bash
docker compose up -d --build
```
If the local development dependency stack is already running, stop it first or
change the ports in `.env` before starting the root deployment stack.
默认部署访问地址:
Default deployment URLs:
- 前端:`http://localhost:3000`
- 后端:`http://localhost:8080`
- Frontend: `http://localhost:3000`
- Backend: `http://localhost:8080`
说明:
The frontend container proxies `/api` to the backend container through Nginx,
so deployment does not require separate CORS handling.
- 前端容器内部使用 Nginx 托管打包后的页面,并将 `/api` 反向代理到后端容器。
- 当前前端 Nginx 已配置 `100MB` 上传限制,与后端 `multipart` 配置保持一致,适合脚本、素材等较大的上传请求。
- 如果本机已经启动了开发态依赖服务,请先停止它们,或修改 `.env` 中的端口后再启动根目录部署编排。
- 当前 Docker 基础镜像已切换到更适合当前网络环境的镜像源,减少拉取失败概率。
## Important Files
## 关键文件
- `docker-compose.yml`: deployment stack
- `yaoai-comic-studio/docker-compose.yml`: local backend dependency stack
- `.env.example`: deployment environment template
- `doc/html/Dockerfile`: frontend image build
- `doc/html/nginx.conf`: frontend reverse proxy config
- `yaoai-comic-studio/Dockerfile`: backend image build
- `docker-compose.yml`:发布态部署入口
- `yaoai-comic-studio/docker-compose.yml`:开发态依赖服务编排
- `doc/html/Dockerfile`:前端镜像构建
- `doc/html/nginx.conf`:前端反向代理与上传限制配置
- `yaoai-comic-studio/Dockerfile`:后端镜像构建
- `.env.example`:发布态环境变量模板
## GitHub
## 当前状态
Repository URL:
`https://github.com/yaoke602/yaoai-video`
- 仓库已经整理为“前端 + 后端”双工程结构
- GitHub 远程仓库已完成同步
- 根目录发布态镜像构建链路已验证通过
- 若开发态 Docker 服务正在运行,发布态启动前需要避免端口和容器资源冲突
server {
listen 80;
server_name _;
client_max_body_size 100M;
root /usr/share/nginx/html;
index index.html;
......@@ -8,6 +9,7 @@ server {
location /api/ {
proxy_pass http://backend:8080/;
proxy_http_version 1.1;
proxy_request_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment