自托管Call-me服务器:Nginx配置与SSL证书安装完整教程

📅 2026/7/26 14:16:04
自托管Call-me服务器:Nginx配置与SSL证书安装完整教程
自托管Call-me服务器Nginx配置与SSL证书安装完整教程【免费下载链接】call-me WebRTC click-to-call platform for instant real-time communication in a persistent shared room with unlimited participants where users can join and call each other instantly. No signup or setup required.项目地址: https://gitcode.com/gh_mirrors/ca/call-meCall-me是一个基于WebRTC的即时通讯平台支持多人实时音视频通话无需注册即可使用。本教程将详细介绍如何在自己的服务器上部署Call-me并通过Nginx配置和SSL证书安装确保通信安全和访问便捷。准备工作服务器与环境要求在开始配置Nginx和SSL之前确保你的服务器满足以下条件操作系统推荐Ubuntu 22.04 LTSNode.js环境已安装Node.js (LTS版本) 和npm域名拥有一个已解析到服务器IP的域名如YOUR.DOMAIN.NAME基础组件Git、PM2进程管理和Docker可选如果你还没有安装Node.js可以使用NVMNode Version Manager快速安装# 安装NVM curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash # 安装Node.js LTS版本 nvm install --lts nvm use --lts第一步部署Call-me服务器1.1 克隆项目代码使用Git克隆Call-me项目到服务器git clone https://gitcode.com/gh_mirrors/ca/call-me cd call-me1.2 配置与启动服务复制配置文件并安装依赖# 复制配置模板 cp public/config.template.js public/config.js cp .env.template .env # 安装依赖 npm install # 使用PM2启动服务推荐 npm install -g pm2 pm2 start app/server.js pm2 save pm2 startup此时Call-me服务已在http://YOUR.DOMAIN.NAME:8000运行。但直接通过IP和端口访问不够安全接下来我们将配置Nginx和SSL。第二步安装与配置Nginx2.1 安装Nginxsudo apt-get install -y nginx2.2 创建Nginx配置文件编辑Nginx默认站点配置sudo vim /etc/nginx/sites-enabled/default添加以下内容将YOUR.DOMAIN.NAME替换为你的域名# HTTP — 重定向所有流量到HTTPS server { listen 80; listen [::]:80; server_name YOUR.DOMAIN.NAME; return 301 https://$host$request_uri; } # HTTPS — 代理请求到Node.js服务 server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name YOUR.DOMAIN.NAME; # SSL证书路径稍后通过Certbot生成 ssl_certificate /etc/letsencrypt/live/YOUR.DOMAIN.NAME/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/YOUR.DOMAIN.NAME/privkey.pem; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://localhost:8000/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; } }2.3 测试Nginx配置sudo nginx -t如果显示nginx: configuration file /etc/nginx/nginx.conf test is successful说明配置正确。第三步安装SSL证书Lets Encrypt3.1 安装Certbotsudo apt install -y snapd sudo snap install core; sudo snap refresh core sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/bin/certbot3.2 获取并配置SSL证书# 自动获取证书并配置Nginx sudo certbot certonly --nginx按照提示输入邮箱并同意条款Certbot会自动生成证书并更新Nginx配置。3.3 设置证书自动续期Lets Encrypt证书有效期为90天通过以下命令设置自动续期sudo certbot renew --dry-run3.4 重启Nginx服务sudo service nginx restart现在你可以通过https://YOUR.DOMAIN.NAME安全访问Call-me服务了验证与测试检查服务状态# 检查Nginx状态 sudo service nginx status # 检查PM2状态 pm2 status功能测试访问https://YOUR.DOMAIN.NAME输入用户名登录使用另一设备访问同一地址尝试发起通话验证音视频是否正常传输确保WebSocket连接稳定进阶配置Docker部署可选如果你倾向于使用Docker可以通过以下步骤快速部署# 复制Docker配置文件 cp docker-compose.template.yml docker-compose.yml # 拉取镜像并启动容器 docker pull mirotalk/cme:latest docker-compose up -dDocker部署同样支持Nginx反向代理和SSL配置步骤与前文一致。总结通过本教程你已成功完成Call-me服务器的自托管部署并通过Nginx和Lets Encrypt实现了安全访问。关键步骤包括环境准备与Call-me服务部署Nginx反向代理配置SSL证书安装与自动续期现在你可以享受安全、稳定的WebRTC音视频通话服务了如需进一步配置可参考项目文档doc/self-hosting.md。【免费下载链接】call-me WebRTC click-to-call platform for instant real-time communication in a persistent shared room with unlimited participants where users can join and call each other instantly. No signup or setup required.项目地址: https://gitcode.com/gh_mirrors/ca/call-me创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考