声明
感谢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左右即可。