ubuntu22.04安装Supervisor
- 安装Supervisor
sudo apt update && sudo apt install supervisor
- 查看安装状态
sudo systemctl status supervisor
sudo systemctl stop supervisor
sudo systemctl start supervisor
sudo systemctl restart supervisor
/etc/supervisor 安装路径在配置程序时需要用到
- 启用web管理页面打开以下配置文件
sudo vim /etc/supervisor/supervisord.conf
将下面的代码添加进去,密码自行修改即可:
[inet_http_server] port=*:9001 username=admin password=Emi23..
保存修改,然后重启程序
sudo systemctl restart supervisor
页面成功打开
但此时还没有添加任何的程序
- 添加需要管理的程序,找开/etc/supervisor/conf.d/文件夹,此时文件夹如果是空,则新建两个文件,后缀分别为.ini和.conf
emiproce.ini的内容:#项目名 [program:wcs] #脚本目录 directory=/home/emi/wcs/ #脚本执行命令 command=/usr/bin/dotnet /home/emi/wcs/AeroSpaceWCSService.dll #项目名 [program:api] #脚本目录 directory=/home/emi/api/ #脚本执行命令 command=/usr/bin/dotnet /home/emi/api/AeroSpaceAPI.dll #supervisor启动的时候是否随着同时启动,默认True autostart=true #当程序exit的时候,这个program不会自动重启,默认unexpected,设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的 autorestart=true #这个选项是子进程启动多少秒之后,此时状态如果是running,则我们认为启动成功了。默认值为1 startsecs=1 #脚本运行的用户身份 user = emi #日志输出 stderr_logfile=/tmp/blog_stderr.log stdout_logfile=/tmp/blog_stdout.log #把stderr重定向到stdout,默认 false redirect_stderr = true #stdout日志文件大小,默认 50MB stdout_logfile_maxbytes = 20MB #stdout日志文件备份数 stdout_logfile_backups = 20
emiproce.conf的文件内容如下:
#说明同上 [program:wcs] directory=/home/emi/wcs/ command=/usr/bin/dotnet /home/emi/wcs/AeroSpaceWCSService.dll autostart=true autorestart=false stderr_logfile=/tmp/wcs_stderr.log stdout_logfile=/tmp/wcs_stdout.log #user = emi [program:backservice] directory=/home/emi/backservice/ command=/usr/bin/dotnet /home/emi/backservice/AeroSpaceBackService.dll autostart=true autorestart=false stderr_logfile=/tmp/emi_stderr.log stdout_logfile=/tmp/emi_stdout.log #user = emi
/usr/bin/dotnet为你电脑上dotnet的安装路径,查看地方法如下
whereis dotnet
配置文件修改后更新配置文件
sudo supervisorctl update
重启supervisor程序也是可以的,刷新web页面,添加成功