LiveKit 服务部署笔记

Caddy 反向代理配置

1
2
3
example.com {
reverse_proxy http://172.17.0.1:7880
}

LiveKit 配置文件 livekit.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
port: 7880

rtc:
udp_port: 7882
tcp_port: 7881
use_external_ip: true

keys:
mykey: <your_api_key>

turn:
enabled: true
domain: example.com
tls_port: 5349
udp_port: 13478
cert_file: /certs/example.com.crt
key_file: /certs/example.com.key

Docker Compose 配置 docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.8'

services:
livekit:
image: livekit/livekit-server
container_name: livekit
network_mode: host
restart: unless-stopped
volumes:
- ./livekit.yaml:/livekit.yaml
- /path/to/certificates:/certs:ro
command: >
--config /livekit.yaml
--node-ip <your_public_ip>

防火墙配置

1
2
3
4
5
6
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --permanent --add-port=7881/tcp
firewall-cmd --permanent --add-port=3478/udp
firewall-cmd --permanent --add-port=50000-60000/udp
firewall-cmd --reload

创建加入房间用的 Token(命令行)

使用 LiveKit 提供的 lk 命令行工具生成 Token:

1
2
3
4
5
6
7
8
9
10
11
12
13
lk create-token \
--api-key mykey \
--api-secret <your_api_secret> \
--join --room room1 \
--identity demouser \
--valid-for 24h

lk create-token \
--api-key mykey \
--api-secret <your_api_secret> \
--join --room room1 \
--identity demouser2 \
--valid-for 24h

测试入口:LiveKit 官方 Demo 页面

LiveKit 官方提供了一个在线测试页面,可直接填写 Room 名、Identity 和 Token:

👉 https://meet.livekit.io/?tab=custom

在页面底部填写以下内容:

  • Room Name: wss://example.com
  • Token: 使用上面的命令生成的 Token

总结

本文档适用于快速部署并验证 LiveKit 服务,包括 TURN、反代、Token 认证与在线测试入口,适合自建语音/视频会议系统的初学者和小规模生产场景。