Golang 进程守护 Supervisor
1、安装 Supervisor
2、生成 Golang 可执行程序
进入 golang 项目根目录 cd /data/go/test
,运行 go build -o main main.go
生成可执行程序,可选:再使用 upx main
压缩
3、编辑 supervisor go 的配置文件
重点:
command
值『必须』绝对路径重点:
directory
值『必须』配置(有非 go 结尾的配置文件时必须)
看到网上有不少文章并未配置directory
也能成功启动,经过排查与查阅资料,定位到是directory
的作用是主程序启动时,切换到这个目录,寻找主程序的配置文件目录。如项目中有非 go 结尾的配置文件,这个目录是『必须』配置。directory
作用:主程序启动时的配置文件目录[program:go] ;process_name=%(program_name)s_%(process_num)02d ; command 值『必须』为绝对路径 command=/data/go/test/main autostart=true autorestart=true user=root numprocs=1 redirect_stderr=true stdout_logfile=/var/log/supervisor/go.log directory=/data/go/test
如有 supervisor 配置 golang 更好的方式或其它的欢迎留言
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: