你好管理,因为腾讯40分钟限时让我们很是头疼,但是发现开源免费项目,Jitsi Meet,希望官方集成一键部署,让我们脱离黑企鹅压榨。
Jitsi Meet
Jitsi Meet
Jitsi Meet
Jitsi Meet
Jitsi Meet
Jitsi Meet 完全支持通过 Docker 容器部署。官方提供了预构建的 Docker 镜像和详细的配置指南。以下是可直接使用的 docker-compose.yml 文件,包含核心服务及安全配置。
docker-compose.yml
version: '3.8'
services:
# Web 前端服务
web:
image: jitsi/web:latest
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./web/config:/config
- ./web/crontabs:/var/spool/crontabs:ro
- ./web/letsencrypt:/etc/letsencrypt
environment:
- ENABLE_LETSENCRYPT=1 # 启用 Let's Encrypt 自动 HTTPS
- PUBLIC_URL=meet.yourdomain.com # 你的域名(需提前解析到服务器IP)
- XMPP_DOMAIN=meet.yourdomain.com
- XMPP_AUTH_DOMAIN=auth.meet.yourdomain.com
- XMPP_INTERNAL_MUC_DOMAIN=muc.meet.yourdomain.com
- XMPP_GUEST_DOMAIN=guest.meet.yourdomain.com
- JVB_TCP_HARVESTER_DISABLED=true
depends_on:
- prosody
- jicofo
networks:
- jitsi
# XMPP 服务器(Prosody)
prosody:
image: jitsi/prosody:latest
restart: unless-stopped
volumes:
- ./prosody/config:/config
environment:
- XMPP_DOMAIN=meet.yourdomain.com
- XMPP_AUTH_DOMAIN=auth.meet.yourdomain.com
- XMPP_INTERNAL_MUC_DOMAIN=muc.meet.yourdomain.com
- XMPP_GUEST_DOMAIN=guest.meet.yourdomain.com
- JICOFO_COMPONENT_SECRET=your_jicofo_secret # 自定义密钥(建议随机生成)
- JICOFO_AUTH_PASSWORD=your_jicofo_auth_pass # 自定义密码
- JVB_AUTH_PASSWORD=your_jvb_pass
- JIGASI_XMPP_PASSWORD=your_jigasi_pass
- JIBRI_RECORDER_PASSWORD=your_jibri_pass
networks:
- jitsi
# 会议控制服务(Jicofo)
jicofo:
image: jitsi/jicofo:latest
restart: unless-stopped
volumes:
- ./jicofo:/config
environment:
- XMPP_DOMAIN=meet.yourdomain.com
- XMPP_SERVER=prosody
- JICOFO_COMPONENT_SECRET=your_jicofo_secret # 需与 Prosody 配置一致
- JICOFO_AUTH_USER=focus
- JICOFO_AUTH_PASSWORD=your_jicofo_auth_pass
depends_on:
- prosody
networks:
- jitsi
# 视频桥接服务(JVB)
jvb:
image: jitsi/jvb:latest
restart: unless-stopped
ports:
- "10000:10000/udp" # UDP 端口用于媒体传输
volumes:
- ./jvb:/config
environment:
- DOCKER_HOST_ADDRESS=your.server.ip # 服务器公网 IP
- XMPP_SERVER=prosody
- XMPP_AUTH_DOMAIN=auth.meet.yourdomain.com
- XMPP_INTERNAL_MUC_DOMAIN=muc.meet.yourdomain.com
- JVB_AUTH_USER=jvb
- JVB_AUTH_PASSWORD=your_jvb_pass
- JVB_TCP_HARVESTER_DISABLED=true
depends_on:
- prosody
networks:
- jitsi
networks:
jitsi:
driver: bridge
部署步骤
- 环境准备
- 安装 Docker 和 Docker Compose
- 域名解析(如 meet.yourdomain.com)指向服务器公网 IP
- 开放端口:80/tcp, 443/tcp, 10000/udp
- 生成配置文件
bash
mkdir -p {web,prosody,jicofo,jvb}/config
- 启动服务
bash
docker-compose up -d
- 验证部署
- 访问 https://meet.yourdomain.com,创建测试会议。
关键配置说明
参数 作用 ENABLE_LETSENCRYPT=1 自动申请 Let’s Encrypt SSL 证书(需确保域名解析正确且 80/443 端口开放) PUBLIC_URL 用户访问的 Jitsi Meet 域名 JICOFO_COMPONENT_SECRET Jicofo 与 Prosody 的通信密钥(需保持一致) DOCKER_HOST_ADDRESS 服务器公网 IP(用于 STUN/TURN 服务) 10000/udp 媒体传输端口(若服务器在 NAT 后,需配置端口转发)
常见问题
- HTTPS 证书申请失败
- 检查域名解析和防火墙设置
- 手动生成证书后挂载到 /web/letsencrypt 目录
- 视频无法连接
- 确认 10000/udp 端口开放
- 检查 DOCKER_HOST_ADDRESS 是否为公网 IP
- 自定义配置
- 修改各服务的 config 目录中的文件(如界面定制、身份验证等)。
通过此配置,你可以快速搭建一个安全、可扩展的 Jitsi Meet 视频会议系统。如需高可用部署,可扩展为多节点集群并配置负载均衡。
用1pan官方加速也无法拉image pull failed!image docker.io/jitsi/web:latest pull failed, err: Error response from daemon: Get “https://registry-1.docker.io/v2/”: context deadline exceeded
希望1pan直接面板出个,点一下安装方便,主要没有证书
你网络问题,挂梯子就行
配置加速都不行?arm架构难挂梯子