BigBlueButton-Docker部署
BigBlueButton 通过 Docker 部署的完整流程与配置说明
#tech / dev / library
#type / howto
#status / growing
BigBlueButton Docker 部署
[!info] related notes
- 相关工具: Docker, Docker MOC
- 相关场景: 项目云部署
目标
使用 Docker 部署 BigBlueButton(BBB)开源视频会议系统,支持实时音视频、屏幕共享、白板、录制等功能。
前置条件
- 服务器配置:最低 4 核 CPU、8GB RAM(推荐 8 核 16GB+,支持 50+ 用户)
- 操作系统:Ubuntu 22.04 LTS(官方推荐)
- 域名:一个已解析到服务器的域名(如
bbb.example.com) - SSL 证书:BBB 要求 HTTPS(可用 Let’s Encrypt 自动获取)
- 开放端口:
- 80/443(HTTP/HTTPS)
- 16384-32768/UDP(WebRTC 媒体流)
- 1935(RTMP,可选)
- Docker 20.10+ 和 Docker Compose v2
部署方式
方式一:bbb-install 脚本(官方推荐)
# 安装 Docker 版 BBB(-d 表示 Docker 模式)
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | sudo bash -s -- \
-v jammy-300 \
-s bbb.example.com \
-e admin@example.com \
-d
参数说明:
-v jammy-300:BBB 3.0 版本,基于 Ubuntu Jammy-s:域名-e:Let’s Encrypt 证书通知邮箱-d:Docker 模式
方式二:docker-compose 手动部署
# 克隆官方 Docker 仓库
git clone https://github.com/bigbluebutton/docker.git bbb-docker
cd bbb-docker
# 复制示例配置
cp docker-compose.yml.example docker-compose.yml
cp .env.example .env
# 编辑 .env 配置
# 设置 DOMAIN、SECRET、TURN 服务器等
# 启动
docker compose up -d
方式三:社区维护的简化版
bigbluebutton/docker 提供了更易用的 Docker Compose 配置。
关键配置
录制功能
BBB 支持录制会议,配置要点:
# .env 中启用录制
ENABLE_RECORDING=true
RECORDING_DIR=/var/bigbluebutton/recordings
录制文件格式:
presentation:幻灯片 + 音视频(默认)screenshare:屏幕共享video:网络摄像头
屏幕共享
默认已启用,确保防火墙放行 UDP 端口范围 16384-32768。
TURN 服务器(NAT 穿透)
如果用户在防火墙/NAT 后面,需要配置 TURN 服务器:
# .env
TURN_SERVER=turn.example.com
TURN_SECRET=your_turn_secret
端口要求
| 端口 | 协议 | 用途 |
|---|---|---|
| 80 | TCP | HTTP(重定向到 HTTPS) |
| 443 | TCP | HTTPS(Web 界面) |
| 16384-32768 | UDP | WebRTC 音视频流 |
| 1935 | TCP | RTMP(可选) |
验证
-
docker compose ps所有容器状态为 running - 浏览器访问
https://bbb.example.com能看到 BBB 登录页面 - 创建一个测试会议,能正常进入音视频
- 屏幕共享功能正常
- 录制功能正常(如已启用)
-
bbb-conf --check输出无错误
常见问题
Q: 安装后无法访问? A: 检查防火墙/安全组是否放行了 80、443 和 UDP 16384-32768 端口。云服务器需要在控制台配置安全组规则。
Q: 音视频卡顿或连不上?
A: 大概率是 TURN 服务器问题或 UDP 端口未开放。部署 coturn 作为 TURN 服务器:apt install coturn。
Q: 如何升级 BBB 版本?
A: Docker 方式:cd bbb-docker && git pull && docker compose pull && docker compose up -d。注意备份配置和数据。
Q: 录制文件在哪里?
A: 默认路径 /var/bigbluebutton/recordings/,可通过 BBB 的 API 或 Greenlight 界面下载。
Q: Docker 部署和裸机部署有什么区别? A: Docker 部署更易管理和升级,隔离性好。裸机部署性能略高(无容器开销),但升级和迁移困难。推荐 Docker 方式。