bbb-install 保姆级部署指南:30 分钟搭建 BigBlueButton 在线会议服务
【免费下载链接】bbb-installBASH script to install BigBlueButton in 30 minutes.项目地址: https://gitcode.com/gh_mirrors/bb/bbb-install
"下周要上网课,会议室还没搭好",或者"老板让我三天内自建一套远程培训系统"——接到这类需求,你大概率绕不开 BigBlueButton 这个开源在线会议系统。它功能全、能私有化部署,但几十个组件的安装配置曾劝退不少人。今天要说的 bbb-install,正是专为"BigBlueButton 部署"而生的自动化脚本:一条命令,30 分钟内,把一台裸服务器变成可正常开会的系统。
它凭什么值得用:一条命令解决三大痛点
- 全自动安装,告别手工踩坑。脚本会替你处理 apt 源、依赖包、Nginx 反代、FreeSWITCH 等一连串环节,不用再对着教程逐条敲命令。
- 证书与防火墙顺手搞定。给它域名和邮箱,它自动向 Let's Encrypt 申请 TLS 证书,还挂上定时任务自动续期;再加一个
-w参数,UFW 防火墙也一并配好。 - 生态组件一键加装。Greenlight 房间门户、Keycloak 统一认证、LTI 学习平台对接,都是脚本里一个参数的事,装完即用。
动手前,先想清楚这三件事
任何部署都怕"临时缺东西",先花十分钟确认下面三件事,能省下大量排错时间。
第一,服务器要达标。建议用 64 位 Ubuntu 20.04 或 22.04,内存至少 4GB(真正用起来推荐 8GB 以上),多核 CPU,磁盘给会议录制文件留足空间。
第二,域名和邮箱要备好。你需要一个解析到服务器公网 IP 的完整域名(比如 bbb.example.com),以及一个能收信的邮箱——申请 SSL 证书全靠它。因为 Let's Encrypt 会回访你的服务器做验证,所以域名解析必须提前生效。
第三,网络端口要放行。除了 SSH 的 22 端口,还要开放 HTTP/HTTPS 的 80/443,以及一段给音视频流用的 UDP 端口 16384-32768。云服务器记得在控制台的安全组或防火墙里配置好,AWS 和 Azure 的参考设置如下:
核心流程:三步跑通 BigBlueButton 部署
第一步:确认域名解析没问题
先把解析检查一遍,别等装到一半才发现 A 记录根本没生效。用 dig 验证:
dig bbb.example.com @8.8.8.8返回结果里的 A 记录地址,应该就是你服务器的公网 IP。
第二步:一条命令完成基础安装
把脚本仓库克隆到服务器,以 root 身份执行:
git clone https://gitcode.com/gh_mirrors/bb/bbb-install cd bbb-install bash bbb-install.sh -v jammy-300 -s bbb.example.com -e info@example.com -w四个参数各有分工,念一遍就记住了:
-v jammy-300:装哪个版本。jammy-300 对应 Ubuntu 22.04 上的 BigBlueButton 3.0;如果服务器是 Ubuntu 20.04,改成-v focal-270即可。-s bbb.example.com:设置服务器主机名,换成你自己的域名。-e info@example.com:给 Let's Encrypt 的邮箱,用来签发证书。-w:顺手装 UFW 防火墙,只开放必要端口,强烈建议加上。
接下来的工作全交给脚本:下载依赖、配置服务、申请证书,一般 30 分钟内跑完。
第三步:验证服务是否真的可用
跑完后终端会打印成功提示。最直观的验证方式,是打开浏览器访问你的域名,看到欢迎页后创建一间测试会议室,从下面的加入页面进到会里:
进会后会先让你选择音频接入方式,选"麦克风"即可发言。另外可以用官方配置检查命令过一遍环境,有问题它会直接指出来:
bbb-conf --check进阶玩法:三个真实场景让会议系统真正用起来
场景一:装一个 Greenlight 门户,让同事自助开会
裸的 BigBlueButton 没有前端界面,得自己调 API。给命令加上-g,脚本会帮你装好 Greenlight——BigBlueButton 官方的房间管理器,用户注册登录后自己建房间、约会议、管理录制,界面开箱即用:
管理员登录后还能进后台,调整注册方式(开放注册、邀请制还是审核制)、限制各角色可建房间数量、换 Logo 和主题,不懂开发也能维护一套定制平台:
想对接统一身份认证,再加一个-k,Keycloak 一并装好。
场景二:用 LTI 对接学习管理系统
学校或公司用 Moodle 这类学习管理系统、又不想让用户多记一套账号时,加-t MY_KEY:MY_SECRET安装 BigBlueButton 的 LTI 框架即可。LTI 是学习系统间对接的标准协议,配好这把"钥匙"后,在课程里点一下链接就能直接进会议,用户甚至感觉不到背后是另一套系统。生产环境记得把示例密钥换成足够复杂的随机串。
场景三:私有网络也能装
默认安装要求服务器能被公网访问,因为 Let's Encrypt 需要回访验证。服务器在内网时,加-x参数切换为手动 DNS 验证:脚本会生成一条 TXT 记录,你把它填进域名解析再回车继续。另外,若参会者所在网络限制 UDP 流量,可以单独架一台 TURN 服务器,用-c 域名:密钥把中继服务接进来,会议就能穿透各种严格网络。
踩坑指南:常见问题速查表
| 现象 | 原因 | 解决办法 |
|---|---|---|
| 网页客户端加载不出来 | 没配域名和邮箱,页面跑在 HTTP 上,浏览器禁止网页调用麦克风/摄像头 | 用-s和-e重跑安装,确保走 HTTPS |
| 别人能打开页面但进不了会 | 云安全组或防火墙没放行 UDP 16384-32768 | 回到云控制台补开 UDP 端口段 |
| 安装时证书申请失败 | 域名 A 记录没解析到服务器公网 IP | 用 dig 确认解析,改好 DNS 再重跑 |
| 内网服务器证书反复失败 | Let's Encrypt 无法回访服务器 | 改用-x手动 DNS 验证 |
| 录制文件把磁盘塞满 | 录制默认存在 /var/bigbluebutton | 加-m参数把目录软链到大容量磁盘 |
| 配置较低的服务器安装被拦 | 脚本默认要求达到生产环境标准 | 测试环境可加-j跳过非关键检查 |
写在最后
BigBlueButton 的部署曾经是件"劝退"的事,但有了 bbb-install,它变成了一条可复现的命令:准备一个域名、一台服务器、一个邮箱,剩下的交给脚本,30 分钟后你就有了一套可用的开源会议系统。后续想升级,重跑一遍同样的命令即可,装过的组件会自动更新。
想研究脚本的完整参数,可以 clone 仓库 https://gitcode.com/gh_mirrors/bb/bbb-install 慢慢看,官方文档里还有界面定制、录制策略、扩容方案的详细介绍。如果你在部署中遇到了速查表之外的新坑,欢迎在评论区留言,我们一起把它补进去。
【免费下载链接】bbb-installBASH script to install BigBlueButton in 30 minutes.项目地址: https://gitcode.com/gh_mirrors/bb/bbb-install
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考