windows配置supervisor实现nginx自启

前言

有些老项目的nginx部署在windows server上,而且服务器比较老旧,经常异常重启。鉴于个人并不熟悉windows server,因此配置supervisor自启nginx,实现windows开机自启supervisor,然后supervisor启动nginx。

安装supervisor

supervisor为go语言版,代码仓库地址: https://github.com/ochinchina/supervisord

  1. 代码拉取后,编译出windows的二进制程序

    go build -o supervisord.exe

  2. 随便找个目录放置supervisor的二进制程序,比如C:\supervisor

  3. C:\supervisor目录下新建文件supervisord.conf,内容示例如下:

    [inet_http_server]
    port=127.0.0.1:9001
    [supervisord]
    logfile=%(here)s/supervisord.log
    logfileMaxbytes=50MB
    logfileBackups=10
    loglevel=info
    pidfile=%(here)s/supervisord.pid
    [include]
    files = C:\supervisor\conf/*.ini

  4. C:\supervisor目录下新建文件夹conf,,然后在 conf 文件夹下新建文件 nginx.ini,内容示例如下,注意根据实际情况修改nginx的路径

    [program:nginx]
    directory=C:\applications\nginx-1.22.1
    command=C:\applications\nginx-1.22.1\nginx.exe
    autostart=true
    autorestart=true
    stopsignal=TERM

  5. 编写启动的批处理脚本,示例如下:

    @echo off
    start C:\supervisord\supervisord.exe /c C:\supervisord\supervisord.conf /d

修改nginx的配置

主要设置nginx为前台启动,修改nginx.conf文件,在全局域中添加配置参数:

复制代码
daemon off;

配置任务计划程序

windows的任务计划程序类似linux的crontab

  1. 创建任务,常规菜单中,名称任意,可填写"supervisor",描述任意,安全选项勾选"不管用户是否登录都要运行",可勾选"使用最高权限运行"
  2. 点击菜单栏"触发器",点击新建,开始任务切换为"启动时"
  3. 点击菜单栏"操作",点击新建,程序或脚本栏选择"安装supervisor - 第5步"中的批处理脚本路径
  4. 保存任务即可
  5. 若为测试环境,可重启服务器测试supervisor和nginx是否已自启
相关推荐
南棱笑笑生18 小时前
20251211给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-6.1】系统时适配OV5645摄像头
windows·rockchip
夜月yeyue19 小时前
Linux内高端内存
linux·运维·单片机·嵌入式硬件·ci/cd·硬件架构
云宏信息19 小时前
运维效率提升实战:如何用轻量化云管平台统一纳管与自动化日常资源操作
运维·服务器·网络·架构·云计算
XINERTEL19 小时前
自动化测试的「千里眼」:当RTSM远程控制遇上自动化,测试效率直接拉满
运维·功能测试·自动化·以太网测试
杨云龙UP19 小时前
MySQL 自动备份与覆盖恢复实战:一套脚本搞定全库/按库备份恢复
linux·运维·数据库·sql·mysql
sjg2001041420 小时前
Deepin 20.9 误装gcc-8-base_8.4.0-1ubuntu1~16.04.1_amd64 后卸载
linux·运维·服务器
一帘忧梦20 小时前
linux 系统rcs脚本启动
linux·运维·lua
jerryinwuhan21 小时前
1210_1 Linux
linux·运维·服务器
福尔摩斯张1 天前
Linux信号捕捉特性详解:从基础到高级实践(超详细)
linux·运维·服务器·c语言·前端·驱动开发·microsoft
cypking1 天前
Nuxt项目内网服务器域名代理访问故障排查
运维·服务器·php