• .netcore程序在linux下用supervisor守护


    .netcore程序发布到linux然后执行dotnet xxx.dll,如果退出shell终端,程序也会跟着退出,则需要使用supervisor来守护

    环境centos7,.netcore3.1

    1,安装supervisor

    yum install supervisor 

    2,设置开启启动

    systemctl enable supervisord.service

    3,生成配置文件

    echo_supervisord_conf > /etc/supervisord.conf

    打开配置文件找到最后两行改为如下:

    [include]
    files = /etc/supervisord.d/*.ini

    ps:supervisor会对/etc/supervisord.d/目录下的所有.ini文件起作用

    4,在/etc/supervisord.d/目录添加api.ini文件如下:

    [program:api]
    command=dotnet xxx.dll    
    directory=/root/web/api
    environment=ASPNETCORE__ENVIRONMENT=Production
    user=root
    stopsignal=INT
    autostart=true 
    autorestart=true 
    startsecs=3
    stderr_logfile=/root/web/api/err.log
    stdout_logfile=/root/web/api/out.log

     5,启动

    supervisord -c /etc/supervisord.conf

    6,查看运行状态

    supervisorctl -c /etc/supervisord.conf

    ps:supervisor可以用来守护redis和nginx

    nginx.ini仅供参考:

    [program:nginx]
    command= /root/nginx/sbin/nginx -g 'daemon off;'  
    environment=ASPNETCORE__ENVIRONMENT=Production
    user=root
    stopsignal=INT
    autostart=true 
    autorestart=true 
    startsecs=3
    stderr_logfile=/root/nginx/sbin/err.log
    stdout_logfile=/root/nginx/sbin/out.log

    redis.ini仅供参考:

    [program:redis]
    command=/root/redis/src/redis-server /root/redis/redis.conf 
    environment=ASPNETCORE__ENVIRONMENT=Production
    user=root
    stopsignal=INT
    autostart=true 
    autorestart=true
    startsecs=3
    stderr_logfile=/root/redis/src/err.log
    stdout_logfile=/root/redis/src/out.log
  • 相关阅读:
    spring aop
    Linux进程管理命令
    逻辑卷管理-LVM(Logical Volume Manager)
    Linux磁盘与文件系统管理(二)
    Linux磁盘与文件系统管理(一)
    Linux后台运行和关闭、查看后台任务
    Linux用户管理及用户信息查询
    文件备份与压缩
    Liunx信息显示与文件搜索
    文本处理三剑客之 awk
  • 原文地址:https://www.cnblogs.com/hai2015/p/12753718.html
Copyright © 2020-2023  润新知