【免费下载链接】SlideBot-AI SlideBot AI - AI-Powered Presentation Generator项目地址https://gitcode.com/gh_mirrors/sl/SlideBot-AI点击查看免费下载SlideBot AI 是一款基于 Gemini 大模型的 AI 演示文稿PPT智能生成工具。想把它变成团队可用的线上服务生产部署是必经一步。本文带你用 uvicorn Nginx Docker 完成完整上线流程从环境变量配置、前端构建、服务发布、反向代理到容器化打包一套可直接落地的部署教程。为什么选择 uvicorn Nginx Docker先花 1 分钟理解这套技术栈的分工后面每一步就都好懂了组件角色在 SlideBot AI 中的职责uvicornASGI 服务器运行 FastAPI 后端提供全部/api/*接口和前端静态页面Nginx反向代理80/443 端口接入、HTTPS、上传大小限制、长任务超时控制Docker容器化一键打包 Python Node 运行环境保证部署环境一致SlideBot AI 的后端基于 FastAPI见 server.py启动后同时托管 React 前端的构建产物所以整个系统只需要发布一个 Python 服务架构非常简洁。部署前准备环境与配置清单环境要求来自 README.mdPython 3.10Node.js 18一个 Gemini API Key必需克隆项目并安装依赖git clone https://gitcode.com/gh_mirrors/sl/SlideBot-AI cd SlideBot-AI # 安装后端 Python 依赖FastAPI、uvicorn、Pillow 等见 requirements.txt pip install -r requirements.txt配置环境变量。这是最容易出的一步项目通过 modules/config.py 读取.env文件官方提供了示例模板cp .env.example .env编辑.env核心变量如下# 必需Gemini API 密钥文本生成 图片生成都依赖它 GEMINI_API_KEYyour_gemini_api_key_here # 可选科大讯飞语音转写不配置则录音转写功能不可用 IFLYTEK_APP_IDyour_iflytek_app_id IFLYTEK_API_SECRETyour_iflytek_api_secret 另外注意系统使用邀请码登录默认邀请码为VISITOR可在 invite_codes.json 中自行修改生产环境建议只发放受控的邀请码。第一步构建 React 前端为静态文件前端位于 frontend/使用 React 18。构建一次即可产物会被后端自动托管cd frontend npm install npm run build cd ..构建成功后会生成frontend/build/目录。后端启动时 server.py 中的setup_static_files()会自动挂载/static静态资源目录配置 SPA 路由兜底所有未匹配路径返回index.html关键检查点如果构建目录不存在日志会打印前端构建目录不存在页面将打不开——这是新手最常踩的坑。第二步uvicorn 发布后端服务本地快速验证开发模式python server.py生产环境推荐用 uvicorn 命令行直接启动uvicorn server:app --host 0.0.0.0 --port 8001几个生产参数说明--host 0.0.0.0允许外网访问本机测试可用127.0.0.1--port 8001SlideBot AI 的默认端口--workers 2可选多进程提升并发能力注意会话数据存于内存多 worker 时需确认业务可接受--log-level info保留日志便于排查验证服务是否健康SlideBot AI 内置了健康检查接口curl http://localhost:8001/api/health返回如下 JSON 即说明后端上线成功{message: PPT智能生成器API服务正在运行, version: 2.0.0, docs: /docs}用 systemd 守护进程不用 Docker 时的推荐做法创建/etc/systemd/system/slidebot.service[Unit] DescriptionSlideBot AI Service Afternetwork.target [Service] WorkingDirectory/opt/SlideBot-AI ExecStart/usr/bin/uvicorn server:app --host 127.0.0.1 --port 8001 Restartalways RestartSec5 [Install] WantedBymulti-user.targetsystemctl daemon-reload systemctl enable --now slidebot第三步Nginx 反向代理配置Nginx 负责公网接入。针对 SlideBot AI 的使用特点大文件上传 长耗时图片生成有两个参数必须调好否则线上必出问题server { listen 80; server_name your-domain.com; # 录音、文档、母版图上传放宽请求体限制 client_max_body_size 100m; location / { proxy_pass http://127.0.0.1:8001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # 整份 PPT 逐页生成可能耗时数分钟必须拉长超时 proxy_connect_timeout 60s; proxy_read_timeout 600s; proxy_send_timeout 600s; } }⚠️重点proxy_read_timeout默认只有 60 秒。SlideBot AI 批量生成 PPT 图片/api/image/generate-all属于长任务Nginx 默认配置会在生成中途断开连接务必设为 600s 以上。配置完成后重载 Nginxnginx -t systemctl reload nginx启用 HTTPS如果服务器有域名建议用certbot --nginx your-domain.com一条命令签发并自动改写 Nginx 配置没有域名时内网使用 HTTP 即可。第四步Docker 容器化部署Docker 方案适合多机部署或环境不可控的服务器。仓库未自带 DockerfileREADME.md 建议自行编写下面是一份可直接使用的参考版本# 阶段1构建前端 FROM node:18-alpine AS frontend WORKDIR /app/frontend COPY frontend/package.json . RUN npm install COPY frontend/ . RUN npm run build # 阶段2后端运行 FROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . COPY --fromfrontend /app/frontend/build ./frontend/build EXPOSE 8001 CMD [uvicorn, server:app, --host, 0.0.0.0, --port, 8001]构建并启动容器docker build -t slidebot-ai . docker run -d \ --name slidebot \ -p 8001:8001 \ --env-file .env \ -v $(pwd)/outputs:/app/outputs \ -v $(pwd)/references:/app/references \ -v $(pwd)/audio:/app/audio \ -v $(pwd)/records:/app/records \ slidebot-ai为什么必须挂载数据卷modules/config.py 中定义了多个运行时目录目录用途outputs/生成的 PPT 图片与 ZIP/PDF 包references/用户上传的母版、Logoaudio/会议录音文件records/登录记录 CSV、访问计数不挂载的话容器一删数据全丢。Docker 方案下Nginx 配置与第三步完全相同只需把proxy_pass指向容器所在地址即可。上线自检部署成功长什么样发布完成后按这个清单快速验收健康检查浏览器访问http://你的服务器IP:8001/api/health能看到版本信息 ✅登录输入邀请码VISITOR可正常进入生产环境请换掉默认码✅生成流程输入一个主题能走通「大纲 → 风格 → 逐页生成 → 下载 ZIP/PDF」全流程 ✅长任务不中断10 页 PPT 批量生成过程中Nginx 不报 504 Gateway Timeout ✅重启恢复systemctl restart或容器重启后服务自动拉起 ✅常见问题速查现象原因解决方法打开只有 API 文档没有界面frontend/build不存在重新执行npm run build批量生成中途 504Nginx 超时太短proxy_read_timeout调至 600s上传录音/文档报 413请求体超限client_max_body_size调大生成报 Key 错误GEMINI_API_KEY未配置检查.env并重启服务登录提示邀请码无效邀请码不匹配核对 invite_codes.json总结回顾一下 SlideBot AI 的生产部署全貌配置.envGemini Key 为必需项构建前端npm run build产物由 FastAPI 自动托管uvicorn以0.0.0.0:8001启动systemd 或 Docker 守护Nginx反代重点调好上传大小与 600s 长任务超时验收/api/health接口 完整生成流程整个流程走下来一条命令启动、Nginx 统一接入、Docker 一键交付你的 SlideBot AI 线上服务就稳稳跑起来了。核心源码可参考 server.py路由与静态托管、modules/config.py配置与目录祝上线顺利 赞分享【免费下载链接】SlideBot-AI SlideBot AI - AI-Powered Presentation Generator项目地址https://gitcode.com/gh_mirrors/sl/SlideBot-AI点击查看免费下载相关推荐Mall4j 生产部署运维全指南jar 部署、Docker Compose、Nginx 与上线检查Mall4j 生产部署运维全指南jar 部署、Docker Compose、Nginx 与上线检查 导读 本文是 Mall4j 开源电商系统的部署运维实战指电商后端前端移动开发5分钟上线Bottle应用GunicornNginx生产环境部署指南5分钟上线Bottle应用GunicornNginx生产环境部署指南 你还在为Bottle.py应用部署发愁吗服务器响应慢、并发撑不住、配置复杂到劝退本后端Web框架Angular Google Maps 性能优化技巧5个简单方法提升地图加载速度Angular Google Maps 性能优化技巧5个简单方法提升地图加载速度 Angular Google MapsAGM是一个功能强大的Angula创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考