群晖安装Supervisor守护进程之node-onebot实战

背景:node-onebot在傻妞作者发保姆级教程的时候其实我就部署成功了,但是因为群晖没有systemd,猫咪大佬给的那几条systemctl命令用不了,这个问题一直没有解决,对结果很不满所以一直没有更新教程。上个周末花了点时间学习,看起来我好像成功了。目前挂载没有问题,终于可以给你们交出满意的答卷了。

简单介绍一下Supervisor,我只能根据自己的理解说些白话,可能不专业不严谨,大佬们不要见笑,欢迎纠正我。

一个进程管理工具,群晖系统也不自带,需要自行安装使用。
有了这个工具就可以比较方便的管理想要守护的进程。
因为node-onebot需要后台挂载,然后nohup可能会挂掉,所以通过这个进程管理工具守护进程,效果会好一些。

我的系统环境:群晖6.2.3版本,半白。

下面开始,认真码字✍️。

群晖Supervisor安装使用

一、安装Python3

步骤:群晖套件中心?搜索??安装Python3

群晖安装Supervisor守护进程之node-onebot实战

二、安装pip包管理工具

安装这个的目的是为了方便你可以用pip3命令,使用ssh工具链接群晖。

1、下载get-pip.py并运行

sudo -i #用root身份,其实不用root身份也可以的,就是后面的安装路径啥的要根据自己的改。
wget -O /tmp/get-pip.py 'https://bootstrap.pypa.io/get-pip.py' #下载get-pip.py
python3 /tmp/get-pip.py #运行get-pip.py,一般会提示你的安装路径,记住它,等下要用
群晖安装Supervisor守护进程之node-onebot实战

如果是root身份安装路径一般在/var/packages/py3k/target/usr/local/bin
如果是用户身份安装路径一般在/var/services/homes/你的用户名/.local/bin

2、配置环境变量

安装好pip后,还需要配置一下环境变量,不然还是无法使用pip3安装。

vim ~/.bash_profile 
#按键盘字母i进入编辑模式,输入下面的内容
export PATH=$PATH:/var/packages/py3k/target/usr/local/bin #如果你是用户身份,路径应该是/volume1/homes/你的用户名/.local/bin
#然后按键盘esc退出编辑模式,输入命令:wq保存并退出。
#执行下面的命令生效
source ~/.bash_profile
#最后检查一下环境
echo $PATH #返回下图的结果就是正常了,最后的就是pip3的。
群晖安装Supervisor守护进程之node-onebot实战

至此,你的群晖就可以用pip3命令了。

三、安装配置Supervisor

1、安装Supervisor

pip3 install supervisor #安装supervior

返回下面的结果就是正常的,警告内容也不用管,反正我测试下来也没有影响使用。

群晖安装Supervisor守护进程之node-onebot实战

2、配置Supervisor

1)生成默认配置文件
echo_supervisord_conf > /etc/supervisord.conf #会在etc目录下生成一个默认配置文件
2)修改配置文件

然后,你就可以修改这个默认配置文件,来添加你想要守护的进程。

vim /etc/supervisord.conf #按键盘字母i进入编辑模式,编辑好后按键盘esc退出编辑模式,输入命令:wq保存并退出。

A.取消配置文件中include指令的注释,把配置切割到子文件中。(非必需)

  • 光标移动到[include]模块
  • 删除[include]前面的分号;(就是取消注释吧)
  • 添加files = /etc/supervisord.d/*.conf,上面那个不用管它。

这里的作用我理解应该是可以添加子进程管理。好像我也没用上,但是先记录下来吧。

群晖安装Supervisor守护进程之node-onebot实战

B.进程配置:node-onebot项目为?

详细的进程配置说明可以参考官方文档
当然,我知道你们一点都不想看,所以我就用node-onebot项目为?,
直接给一段配置,让大家直接抄就行(白嫖怪们),复制到最后就行。

[program:node-onebot1] #进程1
command=/volume2/@appstore/Node.js_v12/usr/local/bin/node /volume1/docker/sillyGirl/node-onebot/main.js qq机器人号码1 #前提是你之前已经运行过一次进行初始化登录了
user=root
autostart=true
startsecs=3
startretries=100
autorestart=true
stderr_logfile=/volume1/docker/sillyGirl/node-onebot/error1.log #报错日志路径,随便改
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10
stdout_logfile=/volume1/docker/sillyGirl/node-onebot/access1.log #运行日志路径,随便改
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10

[program:node-onebot2] #进程2
command=/volume2/@appstore/Node.js_v12/usr/local/bin/node /volume1/docker/sillyGirl/node-onebot/main.js qq机器人号码2 #前提是你之前已经运行过一次进行初始化登录了
user=root
autostart=true
startsecs=3
startretries=100
autorestart=true
stderr_logfile=/volume1/docker/sillyGirl/node-onebot/error2.log #报错日志路径,随便改
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10
stdout_logfile=/volume1/docker/sillyGirl/node-onebot/access2.log #运行日志路径,随便改
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
群晖安装Supervisor守护进程之node-onebot实战

编辑好后按键盘esc退出编辑模式,输入命令:wq保存并退出。

Tips:

  • command后面的第一节,是你的node安装路径,务必改成自己的路径。
    群晖套件中心?找到安装的Node.jsv12,看看你的存储空间路径,如果是1,就把路径改成/volume1/@appstore/Node.js_v12/usr/local/bin/node
群晖安装Supervisor守护进程之node-onebot实战
群晖安装Supervisor守护进程之node-onebot实战
  • command后面的第二节,是你的node-onebot安装路径,务必改成自己的。
  • 运行这个的前提是你之前已经初始化登录过qq机器人账号了。
3)最后启动进程!
supervisord #启动进程,返回下面的结果就表示成功了!
群晖安装Supervisor守护进程之node-onebot实战

请务必初始化登录node-onebot后,再使用守护进程!!!

起飞效果,稳稳地很贴心,妈妈再也不用担心飞机颠簸了!!!

群晖安装Supervisor守护进程之node-onebot实战

supervisor的常用命令

supervisord #初始启动Supervisord,启动、管理配置中设置的进程;
supervisorctl stop(start, restart) xxx #停止(启动,重启)某一个进程(xxx);
supervisorctl reread #只载入最新的配置文件, 并不重启任何进程;
supervisorctl reload #载入最新的配置文件,停止原来的所有进程并按新的配置启动管理所有进程;
supervisorctl update #根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启;

后话:这个学习了好久,也码字了好久。真心希望你们可以看懂可以学会。傻妞应该同样适用,但是暂时懒得搞了。 预祝各位从此傻妞不掉线,qq不冻结!

-> 加入科技玩家交流群组:点击加入 注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章中源码或APP等,无法保证其绝对安全,需自行辨别。
6.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @LAzySheep 发布。如若转载,请注明出处: 科技玩家 » 群晖安装Supervisor守护进程之node-onebot实战

给TA买糖
共{{data.count}}人
人已买糖
学习笔记折腾记教程精选文章

群晖傻妞SillyGirl完整部署教程 0305更新部分命令

2021-12-13 13:46:33

教程玩家投稿精选文章

SaoBing全新版本升级-安装教程

2021-12-13 18:49:00

66 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. 萝卜头

    谢谢,分享学习了

  2.              24192

    学到了,根据你的方案,我在宝塔面板的supervisor管理器,启动了,之前一直不知道怎么弄,哈哈,感谢楼主

  3. 这把看我表演

    谢谢分享,学习了

  4. jellysheep

    谢谢,分享学习了

  5. slimei

    前来顶贴!

  6. slimei

    辛苦了,学习一下

  7. 小天1070

    /var/packages/py3k/target/usr/local/lib/python3.8/site-packages/supervisor/options.py:474: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security. self.warnings.warn( 最后启动是这样,能帮我解决下吗

  8. 七年

    瞅瞅瞅瞅,mark一手

  9. 幻念

    先看看,不明白的地方再问

  10. slimei

    感谢分享,插眼学习

  11. 七年

    辛苦大佬分享了,我先学习一下

  12. 84896150

    学习学习,

  13. 84896150

    大佬 牛逼!

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索