星河避难所

返回

一步步教你搭建哔哩哔哩直播机器人与积分商城,轻松部署从零开始Blur image

项目简介#

bilibili-danmu不仅能够监控直播间的弹幕进行自动答谢和定时广告推送,还内置了一个积分商城.

用户在直播间开通大航海即可获得积分,并使用积分兑换礼物。

这使得它不仅仅是一个简单的机器人,更是一个可以提升观众互动和增加主播收益的全方位工具。

GitHub 仓库地址:点击进入

视频搭建教程:点击查看

需要准备的工具#

  • 阿里云服务器:这是我们将要部署项目的基础环境,费用大约在每月 60 元左右。
  • FinaShell:一个简便的工具,帮助你连接服务器并进行管理。
  • Docker:容器化技术,可以轻松部署和管理项目。
  • Git:用于拉取项目代码,快速获取所需文件。

在接下来的步骤中,我们将详细介绍如何购买服务器、安装必要的工具、部署项目并启动服务。如果你是第一次接触这些内容,也无需担心,本文将一步步为你解释每个细节。

部署说明#

1.购买服务器#

登录阿里云#

前往 阿里云控制台

可以通过支付宝/淘宝扫码登录

选择云服务器 ECS#

进入左上角菜单,选择 云服务器 ECS

可以通过支付宝/淘宝扫码登录

创建实例#

点击创建实例

  • 付费类型:包年包月

    首次使用可以选择 按量付费,按量付费模式下服务器按小时收费,不需要服务器后释放即可,不需要过高的投入 长期使用建议包年包月,整体费用会更优惠些

  • 地域:选择香港。

    根据工信部规定,国内服务器必须进行备案,否则无法从事互联网信息服务,不过,由于中国设立有特别行政区,采用的法律法规和中国内地有所不同,如香港,使用香港服务器则不用备案

  • 规格:选择 2 核 2G 配置

    不低于该配置的情况下可以随意购买,注意:尽量避免购买突发性能实例

  • 系统:选择 Ubuntu 24.04 64 位。

  • 网络:分配 IPv4 地址,按流量付费,带宽速度拉满。

    按流量付费时,带宽速度不影响价格,因此访问网站的人不多的情况下可以以较少的费用获得足够速度的网络带宽

  • 登录凭证:选择自定义密码并设置。

    购买服务器后登录服务器的密码,建议妥善保管

实例购买页面

开放端口#

在「云服务器 ECS -> 实例 -> 服务器 -> 安全组」中开放 7777,5177 端口

开启方式见下方视频:

{% dplayer “url=/video/b06795f9/output-13.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

连接服务器#

下载并安装 FinaShell(支持跨平台)。

根据自己的系统安装对应的版本

使用 FinaShell 输入服务器 IP 和密码完成连接。

服务器公网IP可在阿里云云服务器ECS列表中查看

2.安装 docker#

获取最新的软件包信息#

sudo apt update
bash

{% dplayer “url=/video/b06795f9/output-1.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

安装所有可用的更新#

sudo apt upgrade -y
bash

{% dplayer “url=/video/b06795f9/output-2.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

安装 Docker 需要一些必需的依赖包#

sudo apt install apt-transport-https ca-certificates curl software-properties-common
bash

{% dplayer “url=/video/b06795f9/output-3.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

添加 Docker 官方的 GPG 密钥#

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
bash

{% dplayer “url=/video/b06795f9/output-4.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

将 Docker 官方的仓库添加到 APT 源中#

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
bash

{% dplayer “url=/video/b06795f9/output-5.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

更新本地包索引。#

sudo apt update
bash

{% dplayer “url=/video/b06795f9/output-6.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

安装 Docker#

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose
bash

{% dplayer “url=/video/b06795f9/output-7.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

确保 Docker 服务正在运行#

sudo systemctl start docker
bash

{% dplayer “url=/video/b06795f9/output-8.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

设置 Docker 开机自启#

sudo systemctl enable docker
bash

{% dplayer “url=/video/b06795f9/output-9.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

你可以通过运行以下命令来验证 Docker 是否已正确安装:#

sudo docker --version
bash

输出应该显示类似以下的版本信息

Docker version 27.4.1, build b9d17ea

3.部署项目#

克隆项目#

git clone https://github.com/zxc7563598/php-bilibili-danmu-docker.git /opt/bilibili-robots
bash

{% dplayer “url=/video/b06795f9/output-10.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

前往目录#

cd /opt/bilibili-robots
bash

{% dplayer “url=/video/b06795f9/output-11.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

执行初始化脚本#

sh ./setup.sh
bash

{% dplayer “url=/video/b06795f9/output-12.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

构建 docker#

docker-compose build
bash

启动 docker#

docker-compose up -d
bash

当出现以下内容时则部署完成!

正常使用#

机器人的地址为:http://您服务器 IP:7777

首次登录会要求需要输入账号密码,输入后后续访问均需要通过本次输入的账号密码进行访问,请妥善保存

启用积分商城#

  • 前往机器人后台 http://您服务器IP:7777
  • 进入积分商城
  • 进入系统配置
  • 点击 构建商城 获取商城地址

{% dplayer “url=/video/b06795f9/output-14.mp4” “loop=no” “theme=#FADFA3” “autoplay=false” “screenshot=true” “hotkey=true” “preload=false” “volume=0.9” “playbackSpeed=1” “lang=zh-cn” “mutex=true” %}

常见问题#

为什么要购买香港的服务器?#

  • docker 的环境,docker 安装后的 镜像 以及 项目 均托管在外网,使用国内地区的服务器时需要解决科学上网的问题
  • 根据工信部规定,国内服务器必须进行备案,否则无法从事互联网信息服务,使用国内地区的服务器需要绑定域名时要对域名进行备案

使用香港服务器会出现哪些问题?#

阿里云提供的香港服务器有独立回国的线路,因此基本不会存在问题

但偶尔也会存在部分用户访问不到的情况,通常片刻后恢复正常,只不过相对国内服务器还是存在一点稳定性差异

如何绑定域名?#

阿里云Godaddy 等域名交易平台可以 注册/购买 域名。

域名购买,解析到您开通的服务器 IP 后,通过 Finalshell 连接服务器后执行以下内容:

1.获取最新的软件包信息

sudo apt update
bash

2.安装 nginx

sudo apt install nginx
bash

3.在 /etc/nginx/conf.d 目录创建一个.conf 文件(比如域名是 xxx.com 配置文件就叫 xxx.com.conf)文件内容如下:

server {
    listen 80;
    server_name 机器人控制台域名;

    location / {
        proxy_pass http://localhost:7777;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
server {
    listen 80;
    server_name 积分商城域名;

    location / {
        proxy_pass http://localhost:5177;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
plaintext

4.检查 nginx 配置是否正确

sudo nginx -t
bash

5.重启 nginx

sudo systemctl reload nginx
bash

6.安装 certbot

sudo apt install certbot python3-certbot-nginx
bash

7.申请配置证书

sudo certbot --nginx -d 域名
plaintext

8.修改配置 修改 项目地址商城地址 后下拉到底部进行保存

控制台 -> 积分商城 -> 系统配置

暂时想不到其他问题了,想起来再说

一步步教你搭建哔哩哔哩直播机器人与积分商城,轻松部署从零开始
https://hejunjie.life/blog/b06795f9
作者 何俊杰
发布时间 2024年12月28日
版权信息 CC BY-NC-SA 4.0
评论似乎卡住了,尝试刷新?✨