前言
随着 AI 技术的发展,越来越多的创作者开始制作海外视频内容,而字幕翻译也成为了一个绕不开的问题。
传统字幕翻译不仅效率低,而且很多在线翻译工具存在限制,比如翻译次数限制、隐私问题、无法自定义模型等。
如果你是一名 YouTube 创作者,或者经常需要处理国外视频字幕,那么拥有一个属于自己的 AI 字幕翻译工具,会大大提升工作效率。
今天给大家分享一个我开发的开源项目——ywsj-sub-translator。
它是一款基于 Web 的 AI 字幕翻译平台,通过 Docker 即可一键部署到自己的服务器、NAS 或 VPS 上。
项目支持 SRT、VTT、ASS 等常见字幕格式,并且可以接入 GPT、DeepSeek、Kimi、Ollama 等多种 AI 模型,同时支持 Google、DeepL 以及腾讯、百度、有道等翻译服务。
不仅可以自动完成字幕翻译,还支持在线编辑、单条重新翻译、双语字幕导出等功能。
本期教程将带大家从零开始,通过 Docker 部署这个 AI 字幕翻译平台,打造属于自己的智能字幕处理工具。
项目图示
翻译界面

LLM配置界面

翻译引擎选择

翻译过程

导出双语字幕

项目简介
基于 Web 的字幕翻译工具,上传字幕文件即可在线翻译成多种语言。支持传统翻译引擎、LLM 大模型翻译、传统翻译 API 三大类翻译方式,自带翻译进度、实时日志、在线编辑、双语字幕导出等功能。
✨ 功能特性
- 📝 字幕格式 — 支持 SRT / VTT / ASS 三种格式,自动检测
- 🌐 翻译引擎丰富
- 传统引擎:Google 翻译 / DeepL / LibreTranslate
- LLM 大模型:硅基流动 / OpenAI / DeepSeek / 智谱 GLM / 月之暗面 / OpenRouter / Ollama 本地 / 任意 OpenAI 兼容 API
- 传统翻译 API:腾讯翻译 / 百度翻译 / 有道翻译
- ⚡ 批量翻译 — 批量发送、进度条实时显示、翻译日志实时输出
- ✏️ 在线编辑 — 翻译完成后可逐条编辑译文,支持单条重新翻译
- 🌍 双语字幕 — 支持导出双语字幕(原文+译文),可选择排列顺序
- 🧠 智能跳过 — 混合语言字幕自动跳过已是目标语言的条目
- 🔐 登录认证 — 可选密码登录保护,支持在线修改密码
- ⚙️ 配置管理 —
/settings页面集中管理 LLM 配置和翻译 API 配置,支持测试连接、自动获取模型列表 - 🐳 Docker 部署 — 支持 amd64 + arm64 双架构,GitHub Actions 自动构建发布
- 🎨 暗色 / 亮色主题切换
X86/Arm双平台
| 平台 | 架构 | 适用场景 |
|---|---|---|
| linux/amd64 | x86_64 | VPS、PC服务器、Intel/AMD |
| linux/arm64 | ARM64 | 树莓派、Mac M系列、ARM 云服务器 |
部署方法
使用Docker安装
本教程使用docker的方式安装部署,简单便捷

准备条件
1)一台服务器
我们使用莱卡云VPS来演示,建议选择境外云服务器,支持正常访问AIGC各种大模型的vps
需要vps的可以看以下信息,配置尽量选择大点的比如2核心4G内存
莱卡云官网
2)本教程使用到的项目
本教程使用的官方github地址
https://github.com/yyzq-cf/ywsj-sub-translator

项目刚创建, 如果感觉有用,请帮忙点个stars
3)域名(建议)
根据自己的需求,
1.web界面建议绑定域名,方便使用
VPS部署
一、Docker环境部署
在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04
推荐直接用一键脚本
docker安装脚本
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
docker-compose安装脚本
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
二、部署命令
登录我们自己的境外VPS使用root账户执行以下步骤
docker-compose命令
创建一个目录,并进入此目录
mkdir ywsj-sub-translator ;cd ywsj-sub-translator
请自行安装vim编辑器
然后再新建docker-compose.yml
vim docker-compose.yml
services:
sub-translator:
image: ywsj/sub-translator:latest # 使用 sub-translator 最新版 Docker 镜像
container_name: sub-translator # 设置容器名称为 sub-translator
ports:
- "5200:5200" # 映射端口,宿主机 5200 端口访问容器 5200 端口
volumes:
- ./data:/data # 挂载数据目录,将当前目录下 data 映射到容器内 /data
restart: always # 设置容器自动重启策略,保持服务持续运行
注意端口如有冲突自行修改
三、执行容器运行命令
docker-compose up -d #运行容器
docker-compose ps #查看是否启动成功
正常启动如下所示
docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
sub-translator ywsj/sub-translator:latest "/app/entrypoint.sh …" sub-translator 12 minutes ago Up 12 minutes (healthy) 0.0.0.0:5200->5200/tcp, [::]:5200->5200/tcp
四、web界面
打开web页面使用
成功以后需要打开自己相应的端口5200)防火墙就可以web端访问了
主界面
http://ip:5200
初始化用户名密码

输入管理员用户密码即可登录使用

注意事项
问:这个项目配置在大陆地区的vps可以正常运行吗?
答:项目本身可以运行,但有几个点需要注意:
能正常用的:
- ✅ Docker 部署 — 没问题
- ✅ 腾讯/百度/有道翻译 — 国内 API,完全正常
- ✅ 硅基流动/DeepSeek/智谱/月之暗面 — 国内 LLM,完全正常
- ✅ Ollama 本地模型 — 不联网,正常
大陆会有问题的:
- ❌ Google 翻译 — clients5.google.com 和 translate.googleapis.com 在大陆被墙,无法使用
- ❌ OpenAI — api.openai.com 被墙
- ⚠️ DeepL — 国内访问不稳定
- ⚠️ Docker Hub 拉取镜像 — 可能慢,需要配镜像加速
- ⚠️ GitHub — 有时慢但基本能访问
总结就是:大陆 VPS 推荐 LLM 引擎用硅基流动/DeepSeek/智谱,翻译 API 用腾讯/百度/有道,Google 翻译和 OpenAI 在大陆 VPS 上用不了
绑定域名
接下来就是绑定域名和配置SSL证书
绑定域名的教程参考以下内容
绑定域名视频教程
B站
YouTube
绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
欢迎关注我们的微信公众号!


评论区