all-in-aigc/sorafm · 上手攻略

  • 仓库:all-in-aigc/sorafm
  • 链接:https://github.com/all-in-aigc/sorafm
  • 分类:AI视频 · Sora · Next.js · 开源项目
  • 作者:Tom
  • 更新:2026-08-12

是什么

sorafm 是一个基于 Next.js 的开源 Sora AI 视频生成 Web 应用,提供可视化界面来管理和展示由 OpenAI Sora 生成的 AI 视频内容。项目支持 Docker 部署,可以在本地或私有服务器上快速搭建一个 Sora 视频展示站点。

技术栈:Next.js(前端框架)+ PostgreSQL(数据库)+ Tailwind CSS(样式)+ Vercel(官方推荐部署方案)。⚠️ 本项目是 Sora 视频的展示/管理界面,而非 Sora 模型本身;Sora 视频生成依赖 OpenAI 的 API(需自行提供账户和配额)。


解决什么问题

Sora 是 OpenAI 的文生视频模型,能力强大,但 OpenAI 在 2026 年 3 月已宣布停止 Sora 的移动端和 API 服务(API 计划于 2026 年 9 月完全关闭)。在此背景下,sorafm 作为开源社区对 Sora 视频展示场景的探索,提供了一个可部署的 Web UI,让用户可以在本地或私有环境中管理和浏览 AI 生成视频,适合:

  • 个人/团队搭建内部 Sora 视频作品集
  • 研究者展示和记录 Sora 实验产出
  • 在 Sora API 彻底关闭前搭建一个本地化存档方案

快速安装

方式一:Vercel 一键克隆(推荐)

https://vercel.com/new/clone?repository-url=https://github.com/all-in-aigc/sorafm

Vercel 会引导填写必要的环境变量:

  • POSTGRES_URL:PostgreSQL 数据库连接字符串(必填)
  • WEB_BASE_URI:应用根 URL(本地开发填 http://localhost:3000

⚠️ 数据库可使用 Vercel Postgres / Supabase / 本地 PostgreSQL。

方式二:Docker 部署(适合私有服务器)

# 构建镜像
sudo docker build -f deploy/Dockerfile -t sorafm:latest .

# 运行容器(端口 8014 → 容器 8080)
sudo docker run -itd -p 127.0.0.1:8014:8080 --restart=always sorafm:latest

配合 Nginx 反向代理:

server {
    listen 80;
    location / {
        proxy_pass http://127.0.0.1:8014/;
        proxy_set_header Host $http_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;
    }
    error_log /var/log/nginx/sorafm.error;
}

方式三:本地开发

# 克隆仓库
git clone https://github.com/all-in-aigc/sorafm
cd sorafm

# 安装依赖
pnpm install

# 初始化数据库(在 PostgreSQL 中创建数据库后执行)
# 参考 data/install.sql 建表

# 配置环境变量
# 在项目根目录创建 .env.local,内容如下:
# POSTGRES_URL="postgres://USER:PASSWORD@HOST/DB"
# WEB_BASE_URI="http://localhost:3000"

# 启动开发服务器
pnpm dev --port 3000

# 打开 http://localhost:3000

核心用法

数据库初始化

在 PostgreSQL 中执行建表 SQL(文件位置:data/install.sql)。需要先在数据库中创建一个空数据库,名称自定,然后将 install.sql 中的内容执行进去。

主题配置

项目使用 Tailwind CSS,若需自定义主题样式,修改 tailwind.config.js 中的主题色板和字体配置。

环境变量说明

变量 必填 说明
POSTGRES_URL PostgreSQL 连接字符串,格式:postgres://USER:PASSWORD@HOST/DB
WEB_BASE_URI 站点根 URL,本地开发填 http://localhost:3000

Nginx 部署注意事项

Docker 方式运行时,容器内部应用监听 8080 端口,映射到宿主机 127.0.0.1:8014;Nginx 代理到 8014。请确保 Nginx 配置中正确设置 Host 和协议头,否则应用可能无法正确生成 URL。


典型适用场景

  1. Sora 视频作品集展示:搭建个人站点,展示自己用 Sora 生成的 AI 视频作品,适合创作者分享和对外展示
  2. 团队 AI 视频资产存档:研究团队或内容工作室在 Sora API 彻底关闭前,将所有生成视频元数据存档,配合私有部署保障数据可控性
  3. AI 视频实验记录:研究者用 sorafm 记录每次 Sora 生成实验的 prompt、参数和输出结果,便于回溯和对比分析
  4. 教学演示:在课堂或工作坊中演示 AI 视频生成效果,提供一个简洁的展示界面

坑与注意

  1. ⚠️ Sora API 已停止服务:OpenAI 于 2026 年 3 月宣布停止 Sora 移动端,API 预计 2026 年 9 月完全关闭。本项目作为展示界面,无法绕过这一限制;如需继续生成 Sora 视频,需使用已有的 Sora API 配额(若尚未过期)。
  2. 视频来源说明:README 明确指出,站点展示的所有视频均由 OpenAI 红色团队(red team)生成,非用户自行生成的内容。此为该仓库的设计定位——展示而非生成。
  3. 数据库是核心依赖:PostgreSQL 必须正常运行才能启动应用;data/install.sql 建表是首次部署的必要步骤。
  4. Docker 端口映射:容器内应用监听 8080,宿主机用 127.0.0.1:8014 做隔离映射——公网无法直接访问容器,如需对外暴露要配合 Nginx 并注意安全边界。
  5. POSTGRES_URL 格式:必须是完整的 postgres:// 协议字符串,包含用户名、密码、主机和数据库名,任何一项缺失都会导致连接失败。
  6. Vercel 部署的环境变量配置:Vercel 新建项目时会在界面引导填写环境变量;若克隆后未正确配置,部署会失败,请重点检查 POSTGRES_URL 是否已填写。
  7. 视频版权注意:所有在 sorafm 上展示的视频均来自 OpenAI red team,商用或再分发需注意 OpenAI 的使用条款。

与同类对比

方案 类型 优点 缺点
sorafm(本仓库) 开源 Web UI 可私有部署、Docker 支持、Next.js 生态 仅展示非生成、Sora API 已停
Sora.FM 官网 在线服务 即开即用 无私有化能力、依赖官方服务
OpenAI 官方 Sora 官方生成平台 官方能力、最全功能 API 2026-09 关闭、费用高
Runway Gen-3 竞品 AI 视频 持续运营、API 稳定 非 Sora、开源程度低
inVideo + Sora 商业集成 有商业支持 闭源、无法私有化

核心差异:sorafm 是 Sora 展示场景的开源私有化方案,解决了"想自己托管一个 Sora 视频展示页"的需求,但生成能力完全依赖 OpenAI——在 Sora API 关闭的大背景下,其实用价值已转向存档和展示而非生产。


一句话推荐结论

sorafm 提供了一个干净、开源的 Sora 视频展示 Web UI,适合在 Sora API 彻底关闭前搭建私有视频作品站;⚠️ 但需注意 OpenAI 已于 2026 年 3 月停止 Sora 服务,本项目定位已从「生成」转向「展示存档」,如果你的核心需求是持续生成 AI 视频,建议评估 Runway、Pika 等仍在活跃运营的替代方案。


⚠️ 重要更新:OpenAI Sora 服务已于 2026 年 3 月停止,API 预计 2026 年 9 月完全关闭。本仓库仅作展示/存档用途,无法绕过此限制。原始仓库:https://github.com/all-in-aigc/sorafm