通过本指南,你将学会如何使用 Docker 和 Nginx 将应用正式部署至生产环境,并配置 HTTPS 证书保障通信安全。
以下是vocespace的基础配置,在启动容器前你需要将该配置复制并在启动时指定
默认的 "key": "devkey", "secret": "secret" 可以正常工作,但是,如果您想提高安全性和稳定性,可以从托管的 livekit 服务器生成密钥/密钥对。
your.ip: 用户宿主机的IP地址,可以使用ifconfig | grep inet进行查看
在这个例子中 192.168.31.138 就是你的宿主机IP
your.server.name: 用于部署的域名
VoceSpace含有两种镜像:
privoce/vocespace:latestprivoce/vocespace:latest_arm所以您需要知道自己当前的服务器架构进行选择, 见: help-查看自己的linux架构
在开始配置 Nginx 反向代理前,我们需要先将后端服务容器运行起来。
-p 3000:3000:将容器的 3000 端口映射至宿主机 3000 端口。-v ${PWD}/vocespace.conf.json:/app/vocespace.conf.json: 将配置进行映射--name:给容器命名,便于后续管理。确保系统更新,并安装所需软件包:
yum 或 dnf)。certbot 和 python3-certbot-nginx 是用于自动配置 HTTPS 的工具。nginx.conf(全局配置,可忽略)路径:/etc/nginx/nginx.conf
路径建议:/etc/nginx/sites-enabled/vocespace 或 /etc/nginx/conf.d/vocespace
首先先简单进行配置:
在 DNS 服务商中确保域名已正确解析至服务器 IP。
--nginx:Certbot 将自动修改你的 nginx 配置以启用 HTTPS。--register-unsafely-without-email:不绑定邮箱。不推荐正式使用,建议加上 --email your@email.com。server_name 必须与你实际申请的证书域名一致。/etc/letsencrypt/live/your.server.name/ 中的文件已生成
其中ssl的配置由certbot生成和本地部署一样您同样需要启动livekit-server来支持webrtc, 您可以选择和本地部署一样下载livekit进行启动,也可以使用docker部署
完成下载后一般都会在/usr/local/bin/livekit-server
我们提供了一份极简配置帮助您进行快速部署,首先创建配置文件vim /etc/livekit.yml
通过使用 nohup 您可以在后台启动livekit-server并将日志输出到/usr/local/bin/logs/livekit_output.log以便于查看
在使用云服务器时,例如:阿里云,腾讯云,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 |
| 443 | tcp | ingress | 0.0.0.0/0 Ipv4 |
| 50000~60000 | udp | ingress | 0.0.0.0/0 Ipv4 |
自动续签证书:
防火墙开放端口(如使用 ufw):
HTTPS 强制与安全加固:可在 nginx.conf 中增加如下配置: