快速部署 Bililive-go:直播录制一键搞定(飞牛 NAS Docker Compose版)
引言
喜欢看 B 站直播的朋友,是不是经常遇到想保存精彩直播片段却手忙脚乱的情况?手动录制容易漏录,第三方工具又怕有广告或功能限制。今天推荐一个开源神器 ——Bililive-go,一款轻量高效的 B 站等平台直播录制工具。结合飞牛 NAS 的图形化优势,无需终端命令,直接通过界面操作即可完成部署,几分钟就能搭建属于自己的直播录制服务。

1 项目亮点
专注 B 站直播:专为 B 站等直播设计,支持指定直播间自动录制,稳定抓取高清流
容器化部署:Docker 镜像封装所有依赖,飞牛图形化操作一键启动,避免环境冲突
数据持久化:配置文件和录制文件本地挂载,容器重启不丢失数据
Web 管理界面:通过浏览器即可配置录制任务,操作简单直观
自动重启:服务异常时自动恢复,保证录制连续性
步骤 1:通过飞牛文件管理器创建目录和配置文件
打开飞牛系统的「文件管理器」,进入你想存放服务的目录(例如「我的应用」文件夹)
右键新建文件夹,命名为
bililive-go(作为部署主目录)进入
bililive-go文件夹,右键新建子文件夹,命名为直播(用于存储录制的视频)在
bililive-go文件夹内,右键「新建文件」,命名为config.yml,双击打开并填入以下内容:
yaml
rpc:
enable: true
bind: :8080
debug: false
interval: 20
out_put_path: ./
ffmpeg_path: # 如果此项为空,就自动在环境变量里寻找
log:
out_put_folder: ./
save_last_log: true
save_every_log: false
feature:
use_native_flv_parser: false
live_rooms:
# qulity参数目前仅B站启用,默认为0
# (B站)0代表原画PRO(HEVC)优先, 其他数值为原画(AVC)
# 原画PRO会保存为.ts文件, 原画为.flv
# HEVC相比AVC体积更小, 减少35%体积, 画质相当, 但是B站转码有时候会崩
- url: https://www.lang.live/room/5664344
is_listening: false
- url: https://live.bilibili.com/22603245
is_listening: true
quality: 0
# '{{ .Live.GetPlatformCNName }}/{{ .HostName | filenameFilter }}/[{{ now | date "2006-01-02 15-04-05"}}][{{ .HostName | filenameFilter }}][{{ .RoomName | filenameFilter }}].flv'
# ./平台名称/主播名字/[时间戳][主播名字][房间名字].flv
# https://github.com/bililive-go/bililive-go/wiki/More-Tips
out_put_tmpl: ''
video_split_strategies:
on_room_name_changed: false
max_duration: 0s
# 仅在 use_native_flv_parser=false 时生效
# 单位为字节 (byte)
# 有效值为正数,默认值 0 为无效
# 负数为非法值,程序会输出 log 提醒,并无视所设定的数值
max_file_size: 0
cookies: {}
on_record_finished:
convert_to_mp4: false
delete_flv_after_convert: false
# 当 custom_commandline 的值 不为空时,convert_to_mp4 的值会被无视,
# 而是在录制结束后直接执行 custom_commandline 中的命令。
# 在 custom_commandline 执行结束后,程序还会继续查看 delete_flv_after_convert 的值,
# 来判断是否需要删除原始 flv 文件。
# 以下是一个在录制结束后将 flv 视频转换为同名 mp4 视频的示例:
# custom_commandline: '{{ .Ffmpeg }} -hide_banner -i "{{ .FileName }}" -c copy "{{ .FileName | trimSuffix (.FileName | ext)}}.mp4"'
custom_commandline: ""
timeout_in_us: 60000000
# 通知服务配置
notify:
telegram:
# 是否开启Telegram通知
enable: false
# 是否启用声音通知
withNotification: true
# Telegram机器人Token
botToken: ""
# Telegram聊天ID
chatID: ""
email:
# 是否开启Email通知
enable: false
# SMTP服务器地址 (例如: smtp.gmail.com, smtp.qq.com等)
smtpHost: "smtp.qq.com"
# SMTP服务器端口 (常用端口: 25, 465, 587)
smtpPort: 465
# 发送者邮箱地址
senderEmail: ""
# 发送者邮箱授权码或应用专用密码
senderPassword: ""
# 接收者邮箱地址
recipientEmail: ""
(保存时注意文件格式为.yml,而非.txt)
步骤 2:编写 docker-compose.yml
在
bililive-go文件夹内,再次新建文件,命名为docker-compose.yml双击打开并填入以下内容(路径已适配飞牛系统的相对路径):
version: '3'
services:
Bililive-go:
image: chigusa/bililive-go # 使用官方镜像
container_name: Bililive-go # 容器名称,方便管理
restart: always # 容器退出时自动重启
privileged: false # 无需特权模式
volumes:
# 挂载本地配置文件到容器内(需确保本地config.yml已创建)
- ./config.yml:/etc/bililive-go/config.yml
# 挂载本地"直播"文件夹用于存储录制的视频(相对路径,与部署目录下的"直播"文件夹对应)
- ./直播:/srv/bililive
ports:
- 2680:8080 # 主机机端口:容器内端口,通过主机2680访问Web界面
network_mode: 'bridge' # 使用桥接网络
步骤 3:通过飞牛 Docker 界面启动服务(无需终端命令)
打开飞牛系统的「Docker 管理」应用,进入「项目」标签页
点击右上角「创建项目」,在弹出的窗口中:
项目名称:填写
bililive-go(可自定义,方便识别)项目路径:点击「浏览」,选择之前创建的
bililive-go文件夹(即存放 docker-compose.yml 的目录)

配置文件:自动识别为该目录下的
docker-compose.yml,确认无误后点击「确定」
返回「项目」列表,找到刚创建的
bililive-go项目,创建项目
等待片刻,刷新页面后若状态显示「运行中」,则部署成功

3. 基础使用指南
访问管理界面:打开浏览器,访问
http://飞牛NAS的IP地址:2680,进入 Bililive-go 的 Web 控制台添加录制任务:在界面中输入 B 站直播间 ID,设置录制模式(手动 / 自动)、清晰度等参数
查看录制文件:录制的视频会保存在飞牛文件管理器的
bililive-go/直播文件夹中,其他设备可直接通过局域网共享访问
4. 注意事项
目录权限:右键飞牛文件管理器中的
直播文件夹,在「属性 - 权限」中设置为「可读可写」,避免容器无法写入录制文件存储空间:直播文件体积较大,建议运行后根据自身硬盘空间配置状态修改直播文件保存路径
网络稳定性:确保飞牛 NAS 的网络连接稳定,避免断网导致录制中断
版本更新:如需更新镜像,进入「Docker 管理 - 本地镜像」,选中
bililive-go点击「更新」即可(飞牛会自动拉取最新镜像,更新镜像前需手动停止docker容器运行
5.支持网站(仅供参考)
6. 项目截图





- 感谢你赐予我前进的力量

