Flask服务停止触发Nginx 502错误,如何配置实现服务自动重启?
解决方案
你的问题是项目对应的systemd服务未配置开机自启规则,按以下步骤操作即可:
首先给每个项目的systemd服务开启开机自启,逐个执行命令:
sudo systemctl enable <你的项目服务名>
把<你的项目服务名>替换为你5个Flask项目各自对应的服务名即可。(可选)如果需要服务进程异常崩溃时也能自动重启,不需要手动干预,可修改每个项目的systemd服务配置文件(默认路径为
/etc/systemd/system/<你的项目服务名>.service),在[Service]区块下添加两行配置:Restart=always RestartSec=5Restart=always代表无论服务是异常崩溃还是正常退出都会自动重启,RestartSec=5代表重启前间隔5秒,避免故障时频繁重启占用服务器资源。修改完配置后执行重载systemd配置命令:
sudo systemctl daemon-reload
再重启对应服务让新配置生效:sudo systemctl restart <你的项目服务名>
配置验证
可以直接执行sudo reboot重启服务器测试,重启完成后无需手动执行任何命令,直接访问项目接口/页面确认是否正常运行即可。也可以通过systemctl is-enabled <你的项目服务名>命令校验自启配置是否生效,返回enabled即为配置成功。
内容的提问来源于stack exchange,提问作者Max Reva
相关产品推荐
相关产品推荐

