【Bncr】Linux/群晖搭建无界Docker和部分报错解决教程
注意: 本文最后更新于 144 天前,内容可能已不再准确,请酌情参考。
【Bncr】Linux/群晖搭建无界Docker和部分报错解决教程
前言
无界更新了3.0也一直想着玩玩,所以这才有了这篇教程,主要是写了一下无界的基础拉取镜像创建,还有小小的报错解决。因为网上教程不多,而且大多数都是直接复制了官方的安装文档,可能对于一些小白来说还是不够详细,所以细致的讲一下。
(无界)Bncr介绍
项目介绍
官方简介
Bncr 是一个开箱即用的Nodejs Chat RoBot(会话式机器人)框架。它基于OOP函数响应式编程,具有占用小、响应快、开发易等特点,允许开发者创建高度可测试、可扩展、松散耦合且易于维护的应用程序。本项目架构深受Koishi与sillyGirl的启发;
特性
- 多平台多账户接入系统 : 2个qq/3个wx/4个tg? so easy!;
- 基于TypeScritp OOP函数响应式编程 :源码仅1.5M,占用小,响应快,开发易 ;
- 极简的插件开发 : 系统高度封装,提供简便人性化的系统方法,随心所欲开发插件;
- 异步同步执行自由控制 : 基于nodejs async/await/Promise特性,你可以自由控制异步同步(阻塞非阻塞运行);
- 不仅仅是Chat RoBot : 原生支持npm/yarn,开发潜力无穷大,如果你愿意,可以在本框架上搭建网站、图片服务器、资源共享平台、并发请求等服务,在JavaScript上能做到的事情在这里都将被实现.
获取token
- 首先你的
网络环境
得允许,因为这个需要到tg
里,如果你不熟悉tg
,或者网络环境不允许
,建议放弃
。。。 - 我们在
tg
内搜索red_Lights_Districts_Bot
red_Lights_Districts_Bot
- 然后我们打开点击
开始
,输入下面的命令进行获取token
。token我们要存下来。就是token:123456:123456
要:
后面的参数
噢
无界搭建(Linux-docker)
- 首先用
ssh工具
连接你的服务器,不管是本地机还是云服务器,先连接才能办事。 - 我们用命令创建一个无界的
文件夹
(最好是在root目录
下噢)mkdir /root/BncrData
- 然后输入下面的命令,进行bncrDocker的
镜像拉取
和创建
(如果你拉取不动
,那请参考下面的搭建docker代理的文章自行搭建
。),关于下面的命令解释
:- -v /root/BncrData:/bncr/BncrData \意思就是把
/root/BncrData
挂载
到容器内的/bncr/BncrData目录
,数据就可以持久保存
在你的服务器上面
,而不会遇到删了容器数据丢失
。 - -p 9090:9090 \解释一下就是
:后面
的9090
是容器内端口,每个容器是独立的不用太在意,这是作者打包docker镜像的时候设置的。一般不要改动
。前面的9090就是你服务器的端口,相当于映射
到了容器内的9090端口。前面的9090你可以改动,只要不与你其他的程序端口冲突
就行。 - 其他的就没什么好解释了。
name
后面就是容器的名称,hostname
就是主机名称,其他的两个log
就是日志的大小。restart on-failure
这个就是设定的容器失败重启次数。docker run -dit \ -v /root/BncrData:/bncr/BncrData \ -p 9090:9090 \ --name bncr \ --hostname bncr \ --restart on-failure:5 \ --log-opt max-size=5m \ --log-opt max-file=3 \ anmour/bncr && docker attach bncr
- -v /root/BncrData:/bncr/BncrData \意思就是把
- 因为上面的命令尾巴有进入
容器交互
的命令,所以你拉取完毕后就会直接出现他内置
的脚本运行 - 然后就会出现下图所示,让你
自定义鉴权url
,(关于详细的鉴权URL
会在本文的末尾有具体介绍
。)这里我们直接回车
即可。 - 接着让你输入获取到的
token
,我们把一开始从bot内获取到的token
填入进去就行了。(注意是:
后面的参数) - 系统日志,我们
默认开
- 控制台的消息日志等级,我们也选择
第一个
- 开发者模式,看你,如果你对代码
很熟悉
那就开,对代码不熟悉
怕后续有改动后怕改不回去,那就关即可 - 上述完毕后无界就启动成功了
无界搭建(NAS-Docker)
- 既然你都玩NAS了相关的Docker套件就不比多说了。首先我们在你需要存放无界的文件夹内创建一个
BncrData
的文件夹
(可以自定义不过后续也要自己修改自定义的),记住好路径 - 然后我们去
NAS
的docker套件里的注册表
右上角搜索
:anmour/bncr
,出来的镜像我们右键
下载(如果下载不行,可以自行搭建docekr加速
) - 我们去容器,选择
新增
,映像
选择刚才下载的无界镜像
,名称自定义或者用bncr
,下面的自动重新启动打勾
。 - 接着默认的9090端口前面是
空的
,填写要映射
出来的端口号
。建议9090
,不占用
的话。下面的存储空间设置
,前面的填写你一开始创建文件夹的路径
,比如我是在sata文件夹
内创建的BncrData
,选择对应的路径
就行。后面的直接复制:/bncr/BncrData
填入进去。往下拉环境这里添加这四个。/bncr/BncrData restart on-failure 5 log-opt max-size 5m log-opt max-file 3
- 确认一遍,完后完成
- 接着在容器里就会看到
bncr
的容器了。我们右键bncr
,打开终端机
,如果你太慢了可能就是空白
的,回车
就行了。以下为了节省步骤就直接用了上面Linux搭建的图,内容是一样的。 - 接着让你输入获取到的
token
,我们把一开始从bot内获取到的token
填入进去就行了。(注意是:
后面的参数) - 系统日志,我们
默认开
- 控制台的消息日志等级,我们也选择
第一个
- 开发者模式,看你,如果你对代码
很熟悉
那就开,对代码不熟悉
怕后续有改动后怕改不回去,那就关即可 - 上述完毕后无界就启动成功了
无界web登录并配置
- 我们浏览器输入你
服务器的IP:搭建无界的端口号
,就可以进入无界的web页面
,首次进入后我们要点击初始化帐号
,不点击也可以,你也可以跳过直接下一步去命令输入,但是对于新人还是要说明白点。 - 官方的web页面会告诉你如何操作。
- 我们的ssh终端没有退出也没有关闭的话,就直接输入官方提示的命令
设置
账号和密码(密码最低6位切记
)即可,如果你前面已经退出了交互模式
,那你需要用命令:docker attach bncr
进入交互模式
再用下面命令(注意这里的bncr
是容器名称,如果你有自定义
那记得替换
)set system name 你的账号 set system password 你的密码
刷新web页面
,就可以用你设置的账号和密码进行登录
- 登录完毕后就是如下页面
- 点击
左边
的插件市场
就可以自己下载插件来玩了(如果插件市场不行
,请看下面的报错解决
)
关于无界的一些报错
鉴权异常
- 如果你遇到
鉴权中心未通过
,如下图所示,那不必担心,我们已经搭建好了无界,所以我们直接进入无界的web页面
。 - 我们找到
用户配置
,找到鉴权url
,把默认的这个删除
,替换
即可。然后重启bncr
:docker restart bncr
- 关于
鉴权URL
,我们可以通过https://bncr.dsdog.tk/ 这个地址查看无界当前的鉴权url
哪些可以用,例如
点击烟雨的,会跳转地址,把地址尾巴的/admin后去掉(包括去掉/admin)
就是你需要的鉴权地址
。替换
即可。也可以使用下面列举的url来替换(不确定未来可用
)。http://bncr.619030.xyz:2082 http://future.free.hr:2082 http://wj.yanyuwangluo.cn https://rebncr.dsdog.tk
- 关于
插件市场报错
- 如果你遇到
connect ECONNREFUSED 0.0.0.0:443报错
,这就是你的dns
问题。你需要更改你的dns
。 例如
我这里是Openwrt
,所以我需要更改Openwrt
的DNS
来解决这类问题。找到Openwrt的网络
--接口
--wan
--编辑
--高级设置
--取消自动获取dns
,自定义内添加8.8.8.8
这是谷歌的,然后还添加一个国内的,114.114.114.114
(注意
因为你的DNS改动,虽然能解决你的刚需问题,但是可能
也会影响
你的网络环境导致
你打开一些网站的页面出现问题
,建议寻找自己网络合适的DNS
。),这里我只是示例
了我的Openwrt解决方案
,可能你是爱快
也可能你是云服务器
,大同小异,就是改DNS即可解决
。
其他命令
- 退出交互模式:Ctrl+P+Q
- 通用更新命令:
docker run --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower \ -c --run-once \ bncr
- 如果上述更新不行,换一下
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower:1.7.1 -c --run-once bncr
- 进入交互模式(群晖推荐自行右键进入):
docker attach bncr
- 查看日志
docker logs bncr
- 进入容器命令行
docker exec -it bncr /bin/sh
阅读剩余
版权声明:
作者:落幕
链接:https://lmu5.com/bncr.html
文章版权归作者所有,未经允许请勿转载。
THE END