1.简单了解弹屏:
- 弹屏,基本是一些文字,那它就一定需要数据库存储
- 写入弹屏需要写入数据库,读取弹屏需要读取数据库
- 把弹屏做成一个接口,让视频接入,即可完成此功能
2.搭建DPlayer弹屏系统
这里提供3种搭建方法, 也许还不够多, 可在交流群中
- centos7,8基于Docker的安装方法
- centos7,8基于pm2的安装方法
- 基于宝塔面板的安装方式
你可以安装实际需求查阅其中一种, 安装步骤较长放在文章后面, 往下滑动即可
3.进行反向代理
这里, 假设你已经完成安装, 那么对于一个https的网站, 你引用的资源应该是https, 否则浏览器会提示”你与该网站的连接并非完全安全”, 这是非常不好的.
这里仅演示如何使用宝塔面板完成此功能
创建一个新的网站,启用https,然后进行反向代理(这里用宝塔面板),这里的dpy名称随意,目标url、发送域名请务必和下面的一致。

测试弹屏
- 反向代理完毕后,直接访问,出现:Not Found,说明正常(这里必须显示 Not Found ,否则失败)
- 把接口代码写入,即可完成,往下看
本站提供一个测试的弹屏接口,勿用于开发环境, 可能无法使用。
https://dp.5252.online/
下面是弹屏测试代码,可拷贝到任意环境测试
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>52的小窝提供弹屏测试代码</title>
</head>
<body>
<div id="dplayer3"></div>
<link href="https://cdn.5252.online/ajax/dplayer/dplayer.min.css" rel="stylesheet">
<script src="https://cdn.5252.online/ajax/dplayer/dplayer.min.js"></script>
<script src="https://cdn.5252.online/ajax/blueimp_md5/md5.min.js"></script>
<script>
var dp = new DPlayer({
container: document.getElementById('dplayer3'),
screenshot: true,
autoplay: false,//自动播放
theme: '#FADFA3',//主题颜色
loop: true,// 循环播放
lang: 'zh-CN',//语言
hotkey: true,//绑定热键
preload: 'auto',//预加载的方式
video: {
url: "https://cdn.5252.online/video/mov_bbb.mp4",
pic: 'https://cdn.5252.online/image/logo.jpg'
},
danmaku: {
id: md5("https://cdn.5252.online/video/mov_bbb.mp4"),
api: 'https://dp.5252.online/' //这里填写弹幕地址
}
});
</script>
</body>
</html>
实际演示效果如下:
5.写在最后
- 官方接口文档:https://github.com/MoePlayer/DPlayer-node
- 最后说明一下,弹屏的id必须是唯一的(可以是空,若为空不显示,那是弹屏搭建失败的表现,请严格按照本站提供的方法搭建),这里建议使用 md5,具体可参考这里
centos7,8基于Docker的安装方法
提示 : 请先获取 root
安装与配置 docker,查看此篇文章
安装docker-compose,请查看此篇文章
安装git (默认可能就有 git ,一般不需要安装)
yum install -y git
使用git克隆弹屏源代码
git clone https://github.com/MoePlayer/DPlayer-node.git
进入下载的弹屏目录
cd DPlayer-node
建立docker-compose容器
docker-compose build
启动docker-compose容器(-d表示在后台运行)
docker-compose up -d
安装成功,默认端口为:http://ip:port,若出现Not Found,说明搭建应该没问题(具体看最后是否可使用弹屏),若安装过程未报错,却不显示Not Found,也无法访问,这也不要紧,不一定就是失败,反向代理后不成功肯定失败,请继续往下看
centos7,8基于pm2的安装方法
提示 : 请先获取 root
下载node.js源码
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
安装node.js
yum install nodejs git -y
下载MongDB源代码
cat <<EOF > /etc/yum.repos.d/mongodb.repo[mongodb-org-4.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-4.0.ascEOF
安装MongDB
yum -y install mongodb-org
设置MongDB开机自启动
systemctl enable mongod
立刻启动MongDB
systemctl start mongod
使用epel源
yum install epel-release -y
安装redis
yum install redis -y
设置redis开机自启动
systemctl start redis
立即启动redis
systemctl enable redis
克隆弹屏代码
git clone https://github.com/MoePlayer/DPlayer-node.git
进入弹屏安装目录
cd DPlayer-node
安装npm工具
npm i
使用npm安装pm2
npm i -g pm2
使用pm2启动node.js项目, 入口文件为index.js(即弹屏接口)
pm2 start index.js --name danmuapi
使用宝塔面板搭建弹屏接口
这里, 我们直接在软件商店中, 下载需要的软件,
- mongdb
- redis
- pm2
在面板环境下, 不推荐使用 docker
下载 dplayer-node 源代码, 点击这里到github下载
接着把它上传到某个服务器的一个目录下, 假设为 /home, 把此代码进行解压缩, 得到一个 Dplayer-node 这样一个文件夹, 我们打开它的 config.js , 看到它依赖于
- mongodb : 127.0.0.1:27017 : danmaku
- redis : 127.0.0.1:6379
这意味着你需要先配置这mongdb和redis, 或修改此文件, 总之你得开启这2个服务, 再开启pm2 , 而且此项目将运行于 127.0.0.1:1207端口
打开 redis, 并打开 mongdb, 在 pm2 管理器中添加项目, 配置如下
- 启动文件 –> 解压目录的 index.js
- 运行目录 –> 解压目录
- 其他性能配置可以默认
此时, 宝塔搭建完成了, 在进行安装时, 小白不要三种都尝试, 前面一旦安装后就会占用端口, 这是你再启动可能会报错而搞的很复杂, 如果端口占用, 关闭redis, mongdb的开启自动, 然后重启再使用宝塔安装.
本篇完,还有疑问?留下评论吧