声明
感谢cokemine大佬的NodeStatus项目以及Railway平台所提供的免费额度!
如果不介意的话注册Railway可以走我的aff
使用Railway平台所搭建的NodeStatus稳定性不如本地搭建的,我的tgbot时常在1min之内发送同个服务器的上线和下线通知(
所以想长期使用我认为还是丢本地vps好,反正资源占用少(
因为懒+不想截图,所以本文以文字为主,只有少量图片,见谅(
1.搭建准备
Github账号一枚
Railway账号一枚(建议直接用Github的号注册,方便些)
MySQL/Sqlite数据库(数据库亦可以用Railway搭建的,只不过我是用的自己的)
耐心!
现在就开始搭建吧!
2.开始搭建
1.Fork项目
首先需要将NodeStatus项目fork到你的Github账号里。
2.将项目部署至Railway
熟悉Railway操作的就直接导入就行了(
登录并绑定Github账号之后访问dashboard页面.
点击右上方的 + New Project
选择Deploy From Repo
选择你Fork的NodeStatus项目
点击Deploy
稍等一会儿便部署完成了。
3. 添加环境变量
在Railway中对应项目的Variables里面添加环境变量。
环境变量详解见Readme
需要注意的是好像Railway的监听端口每个人不一样,需要自己根据部署日志进行调整。
4. 使用Railway自带的MySQL数据库
因为我本地是用的SQLite,为了方便备份我就选的MySQL而不是MongoDB,理论来说都可以的。
用Railway部署好MySQL之后进入MySQL界面
选择Environment目录下的MySQL选项
选择Connect选项
复制MySQL Connection URL,最后的railway你可以改成自己想要的数据库名字,我直接用的nodestatus。
格式如:mysql://root:ababa@XXXX.railway.app:XXXX/nodestatus
将链接粘贴进NodeStatus的环境变量DATABASE所对应的值中便可以开始使用了。
5. 添加监控服务器
访问对应域名/admin登录进入管理界面。
点击左边的Management。
点击New添加节点信息
之后需要的是Username和Password。
据作者所说如果之前是使用他的ServerStatus项目是可以直接导入节点的,我没试过(
至此Web端的操作便已结束。
6. VPS添加监控
该过程以用户名为a1,密码为p1,域名为ava.railway.app举例
Client端我使用的是go语言的版本。
SSH进入需要监控的VPS
运行命令
wget https://raw.githubusercontent.com/cokemine/nodestatus-client-go/master/install.sh
bash install.sh
当提示请输入服务端的 DSN, 格式为 “ws(s)://username:password@yourdomain”"时,按照格式输入:
wss://a1:p1@ava.railway.app
然后等待30s左右即可。