4.6 KiB
4.6 KiB
OpenCut
OpenCut 是一个开源的视频编辑和音频处理平台。
前置条件
在部署 OpenCut 之前,您需要:
- 访问 FreeSound.org 并创建账户
- 在账户设置中创建 API 应用程序以获取您的客户端 ID 和 API 密钥
- 从源代码构建 OpenCut web 镜像(参见 OpenCut GitHub)
快速开始
-
复制示例环境变量文件:
cp .env.example .env -
必需配置 - 编辑
.env并设置以下必需变量:POSTGRES_PASSWORD:数据库密码(请修改默认值!)SERVERLESS_REDIS_HTTP_TOKEN:Redis HTTP 接口的随机令牌OPENCUT_BETTER_AUTH_SECRET:身份验证的随机密钥OPENCUT_FREESOUND_CLIENT_ID:您的 FreeSound 客户端 IDOPENCUT_FREESOUND_API_KEY:您的 FreeSound API 密钥
-
可选配置 - 如需转录功能,请设置:
OPENCUT_CLOUDFLARE_ACCOUNT_IDOPENCUT_R2_ACCESS_KEY_IDOPENCUT_R2_SECRET_ACCESS_KEYOPENCUT_R2_BUCKET_NAMEOPENCUT_MODAL_TRANSCRIPTION_URL
-
启动服务:
docker compose up -d -
访问 Web 界面:http://localhost:3100
服务
web:OpenCut Web 应用程序db:PostgreSQL 数据库redis:Redis 缓存serverless-redis-http:用于 Upstash 兼容性的 Redis HTTP 接口
配置
版本配置
POSTGRES_VERSION:PostgreSQL 版本,默认为17REDIS_VERSION:Redis 版本,默认为7-alpineSERVERLESS_REDIS_HTTP_VERSION:Serverless Redis HTTP 版本,默认为latestOPENCUT_WEB_IMAGE:OpenCut web 镜像名称,默认为opencut/web:latest
端口配置
POSTGRES_PORT_OVERRIDE:PostgreSQL 主机端口,默认为5432REDIS_PORT_OVERRIDE:Redis 主机端口,默认为6379SERVERLESS_REDIS_HTTP_PORT_OVERRIDE:Redis HTTP 接口主机端口,默认为8079OPENCUT_WEB_PORT_OVERRIDE:Web 应用程序主机端口,默认为3100
数据库配置
POSTGRES_USER:数据库用户名,默认为opencutPOSTGRES_PASSWORD:数据库密码,必需POSTGRES_DB:数据库名称,默认为opencut
Redis 配置
SERVERLESS_REDIS_HTTP_TOKEN:Redis HTTP 接口的令牌,必需
应用程序配置
TZ:时区,默认为UTCOPENCUT_BETTER_AUTH_URL:身份验证服务 URL,默认为http://localhost:3100OPENCUT_BETTER_AUTH_SECRET:身份验证密钥,必需OPENCUT_FREESOUND_CLIENT_ID:FreeSound 客户端 ID,必需OPENCUT_FREESOUND_API_KEY:FreeSound API 密钥,必需
可选转录配置
留空以禁用自动字幕功能:
OPENCUT_CLOUDFLARE_ACCOUNT_ID:Cloudflare 账户 IDOPENCUT_R2_ACCESS_KEY_ID:R2 访问密钥 IDOPENCUT_R2_SECRET_ACCESS_KEY:R2 秘密访问密钥OPENCUT_R2_BUCKET_NAME:R2 存储桶名称OPENCUT_MODAL_TRANSCRIPTION_URL:Modal 转录服务 URL
数据卷
postgres_data:PostgreSQL 数据存储
资源限制
| 服务 | CPU 限制 | 内存限制 | CPU 预留 | 内存预留 |
|---|---|---|---|---|
| web | 2.00 | 2G | 0.50 | 512M |
| db | 2.00 | 1G | 0.50 | 256M |
| redis | 1.00 | 512M | 0.25 | 128M |
| serverless-redis-http | 1.00 | 256M | 0.25 | 64M |
安全提示
⚠️ 重要安全建议:
- 在生产环境部署前修改所有默认密码和密钥
- 为以下变量使用强随机生成的值:
POSTGRES_PASSWORDSERVERLESS_REDIS_HTTP_TOKENOPENCUT_BETTER_AUTH_SECRET
- 切勿将包含真实凭据的
.env文件提交到版本控制系统 - 考虑设置带 HTTPS 的反向代理以供外部访问
- 在生产环境中将数据库和 Redis 端口限制在内部网络
- 妥善保管 FreeSound API 密钥
从源代码构建
由于 OpenCut 不提供预构建的 Docker 镜像,您需要自行构建:
# 克隆 OpenCut 仓库
git clone https://github.com/OpenCut-app/OpenCut.git
cd OpenCut
# 构建 web 镜像
docker build -t opencut/web:latest -f apps/web/Dockerfile .
# 返回到您的 compose 目录并启动服务
cd /path/to/compose-anything/src/opencut
docker compose up -d
参考
许可证
请参考 OpenCut 官方项目的许可证信息。