KrillinAI|视频翻译容器化部署:20 分钟从零到上线的完整路径
KrillinAI|视频翻译容器化部署:20 分钟从零到上线的完整路径
KrillinAI 是一款开源的 AI 视频翻译与配音工具,支持一键完成视频的翻译和配音全流程。环境自检、只改几处配置、一条命令拉起,走完这三步,你就完成了 KrillinAI 的容器化部署,让一台可用的视频翻译服务跑在自己的机器上。
环境自检:只需确认两件事
开始之前,确认下面两项已就位:
- Docker 已安装且服务在运行——Ubuntu/Debian 用
sudo apt-get install docker-ce docker-ce-cli containerd.io安装;CentOS/RHEL 用对应的 yum 命令;macOS/Windows 直接从官网安装 Docker Desktop。 - Docker Compose v2 已安装——Linux 上从官方发布页下载二进制文件放到
/usr/local/bin,然后赋予可执行权限;其余平台一般随 Docker 自带。
先把 Docker 守护进程启动起来并设为开机自启:
sudo systemctl start docker
sudo systemctl enable docker
给 Compose 二进制加完权限后,确认两个工具都能正常输出版本:
docker --version
docker-compose --version
⚠️ 若 docker-compose --version 报错,先检查二进制是否放在 /usr/local/bin 并且执行过 sudo chmod +x。
拿到项目并完成首次配置
先备好 OSS Bucket 和 AccessKey
KrillinAI 把视频和字幕文件存在阿里云 OSS 上,这一步要先做。在阿里云 OSS 控制台创建一个 Bucket,要点如下:
- 名称好认即可,比如
krillinai - 地域选离服务器最近的(如华东 2 上海)
- 存储类型选「标准存储」,冗余选「同城冗余」,创建时勾选开通「阻止公共访问」
- 创建完成后,把该 Bucket 的读写权限切换为「公共读」,这样 KrillinAI 才能读到桶里的文件
再到阿里云控制台的 AccessKey 管理页创建一个 AccessKey,把 AccessKey ID 和 AccessKey Secret 保存好,配置时要填。
顺便把备份方式想好:视频和字幕都落在 OSS 里,用 OSS 自带的定时备份功能,或写个小脚本定期下载一份副本,这是成本最低的保险。
只改几处配置项
把项目代码取下来:
git clone https://gitcode.com/GitHub_Trending/kr/KrillinAI
cd KrillinAI
Go 服务端代码位于 runtime/krillinai/ 目录,复制示例配置作为正式配置:
cd runtime/krillinai/config
cp config-example.toml config.toml
打开 config.toml,只需要动下面这些字段,其余保持不变:
[aliyun]
access_key_id = "你的AccessKey ID"
access_key_secret = "你的AccessKey Secret"
oss_bucket = "krillinai"
oss_endpoint = "oss-cn-shanghai.aliyuncs.com"
[server]
port = 8080
log_level = "info"
[ai]
translator = "aliyun"
[ai] 段的 translator 可选 aliyun、openai、deepseek 等,按你想用的翻译通道填写。完整字段说明见配置文件示例。
⚠️ 若启动后翻译一直失败,先检查 OSS 的 AccessKey 与 Bucket 两个值是否填对。
一条命令拉起来,并确认服务在线
KrillinAI Docker 部署的路径其实就三条命令。在项目根目录构建镜像:
docker build -t krillinai:latest .
根目录已带 docker-compose.yml,直接拉起服务:
docker-compose up -d
启动后立刻确认容器状态:
docker-compose ps
容器状态正常的话,浏览器打开 http://localhost:8080 就能看到 KrillinAI 的 Web 界面,视频翻译工具容器化这一步就算上线了。
⚠️ 若容器起不来或反复重启,先运行 docker-compose logs krillinai 看错误详情,再核对 OSS 相关配置。
上线之后:用起来与管起来
完成第一次视频翻译
日常操作就四步:
- 选视频源——上传本地视频文件,或直接输入视频链接。
- 设字幕——选择源语言与目标语言,按需开启双语字幕和语气词过滤。
- 开始翻译——点击「开始翻译」,等 AI 处理完成。
- 下载结果——翻译完成后下载带字幕的视频文件。
翻译出来的效果就是这种双语字幕叠加的形式:
流量上来之后怎么办
单实例扛不住时,标准做法是多实例 + 负载均衡:跑多个 KrillinAI 实例,用负载均衡器分发请求。在 docker-compose.yml 的 krillinai 服务里补上配置挂载:
environment:
- CONFIG_FILE=/app/config/config.toml
volumes:
- ./config:/app/config
再加副本数:
deploy:
replicas: 3
挂载配置目录后每个实例读同一份配置,replicas: 3 表示起 3 个实例。
监控侧,把容器接进 Prometheus + Grafana 能直观看到资源占用;用 ELK 栈收集容器日志,排障会快很多。想调整日志级别或输出格式,改日志配置文件即可。
⚠️ 若翻译速度慢,先确认所选阿里云地域是否离服务器够近、CPU 和内存余量是否充足。 ⚠️ 若视频无法播放,先检查 Bucket 权限是否已设为公共读,以及格式是否为 MP4、AVI、MKV 等常见支持格式。
到这里,KrillinAI 已经在你的机器上跑起来,随时可以投入日常使用。整条路径无论单实例还是多实例集群都一样:环境自检、最小配置改动、一条命令拉起。过程中卡住的细节,可以翻中文 README 或向项目提交 issue。容器化只是起点,后续按你的工作流扩展成多地域、多模型组合,都是顺理成章的事。
火山引擎视频云技术社区,是面向 AI 音视频开发者的技术交流平台。这里汇聚源自抖音、豆包等亿级 DAU 产品的 RTC、直播、点播、AI 媒体处理、音视频互动技术,提供接入指南、最佳实践、性能调优、场景案例、Demo 代码、开源项目、白皮书和 API 文档。社区汇聚官方工程师与一线开发者,为 AI 视频通话、数字人、AI 视频处理等应用的开发与落地提供技术支持。
更多推荐


所有评论(0)