EasyVoice后端服务本地化
国产系统(统信UOS、麒麟等)通常基于 Linux 内核,部署方式与 Linux 类似。# 国产系统局域网部署(假设国产系统IP是 192.168.1.100):如果 3000 端口被占用,可以在 Docker 命令中修改映射,如。如果看到 EasyVoice 的 Web 界面,恭喜你,部署成功!:将当前目录下的audio文件夹挂载到容器,用于保存生成的音频。(如麒麟信创终端、鲲鹏服务器)上部署,
📦 EasyVoice 部署方案对比
| 部署方式 | Windows 11 | 国产系统(统信UOS/麒麟) | 特点 |
|---|---|---|---|
| Docker 部署 | ✅ 支持 | ✅ 支持 | 最简单,一键运行,推荐 |
| Node.js 源码部署 | ✅ 支持 | ✅ 支持 | 适合二次开发 |
| 二次开发版 | ✅ 支持 | ⚠️ ARM架构需特殊镜像 | 新增多角色配音UI |
🪟 Windows 11 系统部署 EasyVoice
方法一:Docker 部署(最简单,推荐)
1. 安装 Docker Desktop
-
访问 Docker 官网 下载 Docker Desktop for Windows
-
双击安装,务必勾选 "Use WSL 2 instead of Hyper-V"(性能更好)
-
安装完成后重启电脑
-
启动 Docker Desktop,等待右下角显示 "Engine running"
2. 验证 Docker 安装
打开 命令提示符(cmd) 或 PowerShell,执行:
docker version
如果显示版本信息,说明安装成功 。
3. 一键部署 EasyVoice
在任意目录打开 命令提示符,依次执行:
# 创建存放音频文件的目录
mkdir audio
# 运行 EasyVoice 容器
docker run -d -p 3000:3000 -v "%CD%\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest
命令解析:
-
-d:后台运行 -
-p 3000:3000:将容器内3000端口映射到本机3000端口 -
-v "%CD%\audio:/app/audio":将当前目录下的audio文件夹挂载到容器,用于保存生成的音频 -
--name easyvoice:容器名称
4. 验证部署
打开浏览器,访问:http://localhost:3000
如果看到 EasyVoice 的 Web 界面,恭喜你,部署成功!
5. 常用 Docker 命令
# 查看容器运行状态
docker ps
# 查看日志
docker logs easyvoice
# 停止容器
docker stop easyvoice
# 启动容器
docker start easyvoice
# 重启容器
docker restart easyvoice
6. 报错处理
问题1:Error response from daemon: Docker Desktop is unable to start 管理员运行CMD
解决:管理员运行cmd
wsl --update
问题2:docker run -d -p 3000:3000 -v "%CD%\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest docker: Error response from daemon: %!C(string=is not a valid Windows path)D%!\(MISSING)audio
这个错误表明 Docker 在解析 Windows 路径时出了问题,%CD% 这个变量没有被正确识别。这是因为在 PowerShell 中,环境变量的引用方式与命令提示符不同。
问题原因
-
在 命令提示符 (cmd) 中:使用
%CD%获取当前目录 -
在 PowerShell 中:需要使用
${PWD}或$(Get-Location)获取当前目录
解决方案
方法一:使用 PowerShell 的正确语法(推荐)
在 PowerShell 中,使用以下命令:
powershell
docker run -d -p 3000:3000 -v "${PWD}\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest
或者:
powershell
docker run -d -p 3000:3000 -v "$(Get-Location)\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest
方法二:使用绝对路径
如果上述方法仍不起作用,可以直接使用绝对路径:
powershell
# 先创建音频目录(如果不存在) mkdir audio -Force # 使用绝对路径(请将 D:\projects\tts-app 替换为你的实际路径) docker run -d -p 3000:3000 -v "D:\projects\tts-app\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest
方法三:切换到命令提示符
如果你习惯使用 %CD% 的语法,可以切换到传统的命令提示符 (cmd):
-
在当前目录的地址栏输入
cmd并回车 -
在打开的 cmd 窗口中运行:
cmd
docker run -d -p 3000:3000 -v "%CD%\audio:/app/audio" --name easyvoice cosincox/easyvoice:latest
方法二:Node.js 源码部署(适合开发)
如果你需要二次开发或修改源码,可以采用这种方式。
1. 安装依赖环境
-
Node.js:下载并安装 Node.js 16+
-
pnpm:打开 PowerShell 执行:
bash
npm install -g pnpm
-
FFmpeg:下载 FFmpeg 并添加到系统环境变量
2. 克隆源码并运行
bash
# 克隆项目 git clone https://github.com/cosin2077/easyVoice.git cd easyVoice # 安装依赖 pnpm install # 启动开发服务器 pnpm dev
访问 http://localhost:5173 即可使用开发版本。
🐧 国产系统部署 EasyVoice
国产系统(统信UOS、麒麟等)通常基于 Linux 内核,部署方式与 Linux 类似。以下是针对国产系统的详细步骤。
方法一:Docker 部署(适配国产系统)
1. 安装 Docker
国产系统通常使用 命令行 安装 Docker。
打开终端,执行以下命令:
bash
# 更新软件源 sudo apt update # 安装 Docker sudo apt install docker.io # 启动 Docker 服务 sudo systemctl start docker sudo systemctl enable docker # 验证安装 docker version
如果系统是 麒麟 或 统信UOS,也可以使用官方脚本安装:
bash
curl -fsSL https://get.docker.com | sudo sh
2. 创建音频目录并部署
bash
# 创建存放音频的目录 mkdir -p ~/easyvoice/audio # 运行 EasyVoice 容器 sudo docker run -d -p 3000:3000 -v ~/easyvoice/audio:/app/audio --name easyvoice cosincox/easyvoice:latest
3. 防火墙配置(如需局域网访问)
如果你希望局域网内的其他设备也能访问(比如你的Vue前端从其他电脑调用):
bash
# 开放3000端口 sudo ufw allow 3000 # 或者直接关闭防火墙(测试环境) sudo ufw disable
4. 访问服务
-
本机访问:
http://localhost:3000 -
局域网访问:
http://<你的国产系统IP>:3000(可通过ip addr或ifconfig查看IP)
方法二:ARM 架构国产设备适配
如果你是在 国产 ARM 设备(如麒麟信创终端、鲲鹏服务器)上部署,需要注意:官方镜像 cosincox/easyvoice:latest 可能不支持 ARMv7 架构。
此时可以使用 二次开发版,该版本已适配 ARM 架构 :
bash
# 查看系统架构 uname -m # 如果是 armv7l,使用这个镜像 sudo docker run -d -p 3000:3000 -v ~/easyvoice/audio:/app/audio --name easyvoice tannic666/easyvoice:v1.1-armv7 # 如果是 aarch64(ARM64),使用这个镜像 sudo docker run -d -p 3000:3000 -v ~/easyvoice/audio:/app/audio --name easyvoice tannic666/easyvoice:v1.1
方法三:使用 Docker Compose(更规范)
在国产系统上,你也可以使用 docker-compose 来管理服务,这样配置更清晰。
1. 安装 Docker Compose
bash
sudo apt install docker-compose
2. 创建配置文件
创建一个目录并新建 docker-compose.yml:
bash
mkdir ~/easyvoice && cd ~/easyvoice nano docker-compose.yml
粘贴以下内容:
yaml
services:
easyvoice:
image: cosincox/easyvoice:latest
restart: unless-stopped
container_name: easyvoice
ports:
- "3000:3000"
environment:
- DEBUG=true
volumes:
- ./audio:/app/audio
3. 启动服务
bash
sudo docker-compose up -d
🔌 将你的 Vue 前端连接到本地 EasyVoice 服务
部署好 EasyVoice 后,修改你之前的 Vue 项目中的环境变量:
修改 .env 文件
env
# Windows 11 本地部署 VITE_EASYVOICE_API_URL=http://localhost:3000/api/tts VITE_EASYVOICE_WS_URL=ws://localhost:3000/ws # 国产系统局域网部署(假设国产系统IP是 192.168.1.100) # VITE_EASYVOICE_API_URL=http://192.168.1.100:3000/api/tts # VITE_EASYVOICE_WS_URL=ws://192.168.1.100:3000/ws
验证连通性
在 Vue 项目中,可以通过浏览器开发者工具的 Network 标签查看 API 请求是否成功。
✅ 部署验证清单
完成部署后,请检查以下事项:
| 检查项 | 预期结果 | 验证方法 |
|---|---|---|
| Docker 容器状态 | 运行中 | docker ps 看到 easyvoice 容器 |
| Web 界面访问 | 可打开页面 | 浏览器访问 http://localhost:3000 |
| 文本转语音 | 能生成音频 | 输入文字点击生成,能播放 |
| 音频文件保存 | 文件生成 | 检查 ~/easyvoice/audio 或 Windows 的 audio 文件夹 |
| Vue 前端调用 | 能获取语音 | 运行你的 Vue 项目,测试 TTS 功能 |
📝 注意事项
-
端口冲突:如果 3000 端口被占用,可以在 Docker 命令中修改映射,如
-p 3001:3000,前端也要相应修改 -
音频存储路径:确保挂载的目录有写入权限
-
国产系统防火墙:如需局域网访问,记得开放对应端口
-
ARM 架构兼容性:国产 ARM 设备务必使用适配的镜像
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐


所有评论(0)