本地 Docker 部署

WARNING

须知: 本地部署可以体验VoceSpace的所有功能,但无法在公开网络中进行访问,若您需要公网部署请参考:

  1. Docker + Nginx
  2. Docker + Caddy

1. 安装 Docker(Docker Engine|Desktop)

INFO

有关具体的 Docker 安装,或安装时出现问题请参看:

  1. Docker Engine Install
  2. Docker Desktop Install

如果您是新生并对命令行感到陌生,我们推荐您安装 Docker Desktop。

在下面的安装中,如果您使用的是 Macos 系统或 Windows 系统我们将引导您安装 Docker Desktop。

2. 获取 VoceSpace 镜像

VoceSpace含有两种镜像:

  • amd: privoce/vocespace:latest
  • arm: privoce/vocespace:latest_arm

所以您需要知道自己当前的服务器架构进行选择, 见: help-查看自己的linux架构

1# amd
2docker pull privoce/vocespace:latest
3# arm
4docker pull privoce/vocespace:latest_arm

3. 复制基础配置

以下是vocespace的基础配置,在启动容器前你需要将该配置复制并在启动时指定

1{
2  "livekit": {
3    "key": "devkey",
4    "secret": "secret",
5    "url": "ws://your.ip:7880"
6  },
7  "codec": "vp9",
8  "resolution": "1080p",
9  "maxBitrate": 3000000,
10  "maxFramerate": 30,
11  "priority": "medium",
12  "redis": { 
13    "enabled": true, 
14    "host": "your.ip", 
15    "port": 6379, 
16    "password": "vocespace", 
17    "db": 0 
18  },
19  "server_url": "localhost"
20}
WARNING

your.ip: 用户宿主机的IP地址,可以使用ifconfig | grep inet进行查看

1inet 127.0.0.1 netmask 0xff000000
2inet 192.168.31.138 netmask 0xffffff00 broadcast 192.168.31.255

在这个例子中 192.168.31.138 就是你的宿主机IP

4. 启动容器

1docker run -d \
2-p 3000:3000 \
3-v ${PWD}/vocespace.conf.json:/app/vocespace.conf.json \
4--name vocespace \
5privoce/vocespace:latest
NOTE

⚠️-v ${PWD}/vocespace.json:/app/vocespace.conf.json: 将配置进行映射

输出

  1. Docker ce: 如果在Linux上,您可以使用docker ps查看进程,然后浏览器访问your_ip:3000查看启动的应用, 然后使用 docker logs <container_id> 查看日志

  2. Docker desktop: 容器启动后观察输出, 当输出Ready on http://ip:3000时,表示本地部署已经完成

12025-05-29 02:44:09 ✅ Socket.IO 安装完成
22025-05-29 02:44:15 环境变量配置:
32025-05-29 02:44:15 LIVEKIT_API_KEY=devkey
42025-05-29 02:44:15 LIVEKIT_API_SECRET=secret
52025-05-29 02:44:15 LIVEKIT_URL=ws://localhost:7880
62025-05-29 02:44:15 NEXT_PUBLIC_BASE_PATH=
72025-05-29 02:44:15 PORT=3000
82025-05-29 02:44:15 HOST=0.0.0.0
92025-05-29 02:44:15 TURN_CREDENTIAL=
102025-05-29 02:44:15 TURN_URL=
112025-05-29 02:44:15 TURN_USERNAME=
122025-05-29 02:44:15 WEBHOOK=
132025-05-29 02:44:15 === 启动应用 ===
142025-05-29 02:44:16 > Ready on http://0.0.0.0:3000

4. 启动 livekit-server

VoceSpace需要依赖livekit-server构建起webrtc以及其他相关服务

下载 livekit-server

Macos
Windows
Linux
1brew update && brew install livekit

启动 livekit-server

livekit-server --dev --bind 0.0.0.0

5. 下载并启动redis

Macos
Windows
Linux
1brew install redis
2brew services start redis -- --requirepass "vocespace" --bind 0.0.0.0 --protected-mode no

云服务器说明

配置安全组/防火墙

在使用云服务器时,例如:阿里云,腾讯云,Google Cloud等,您需要对服务器等安全组/防火墙进行相关配置

port type ingress/egress allow ip
3000 tcp ingress 0.0.0.0/0 Ipv4
3000 tcp egress 0.0.0.0/0 Ipv4
7880 tcp ingress 0.0.0.0/0 Ipv4
7881 tcp ingress 0.0.0.0/0 Ipv4
80 tcp ingress 0.0.0.0/0 Ipv4