使用NSSM将agent注册为windows系统服务说明(实现开机自动启动服务,隐藏窗口运行)

提示:agent和nssm所在路径尽量不要包含空格,否则可能会出现,注册系统服务完成后,不能启动成功
1、如果agent目录下有regAgentService.bat批处理脚本,直接点击运行就自动注册为系统服务了,完成后在【系统服务】中启动wgcloud-agent-release,如果正在窗口模式运行agent,那先关闭运行窗口再注册服务
如果没有这个脚本,则继续往下看手动注册
2、下载nssm-2.24-101-g897c7ad.zip,如果是v3.4.4或以上版本的agent就不用下载了,安装包中本身已经包含有NSSM.exe,直接用就行
3、解压nssm-2.24-101-g897c7ad.zip,比如我们解压到C盘根目录(建议和agent放到同一目录下,因为注册服务后,NSSM不能删除,要持续用)
4、根据windows操作系统是64位或32位,cd到解压的C:\nssm-2.24-101-g897c7ad\win64或C:\nssm-2.24-101-g897c7ad\win32目录,或进入到agent目录,我们要使用nssm.exe注册服务

C:\Users\ethan>cd C:\nssm-2.24-101-g897c7ad\win64
	
5、将wgcloud-agent-release.exe注册为系统服务,cmd下运行命令如下所示

C:\nssm-2.24-101-g897c7ad\win64>nssm install wgcloud-agent-release E:\wgcloud-v3.3.5\agent\wgcloud-agent-release.exe
	
执行完成后提示:Service "wgcloud-agent-release" installed successfully!,说明服务安装成功
提示:将E:\wgcloud-v3.3.5\agent\wgcloud-agent-release.exe替换为自己的agent实际路径,且一定填写绝对路径,不要用相对路径
注册成功后,就可以在系统服务中启动服务wgcloud-agent-release了,然后把原来启动的agent黑窗口关闭即可
6、若要删除wgcloud-agent-release系统服务,用dos命令进入到nssm目录或者agent目录,在cmd下运行命令,如下所示,先停止服务再删除

C:\nssm-2.24-101-g897c7ad\win64>nssm remove wgcloud-agent-release
7、如果注册出现以下错误,请先退出所有的杀毒软件、安全软件,重新打开cmd,再操作就好了。或者把nssm.exe的完整路径加到安全软件的白名单。注册完成服务后可以再打开杀毒软件
Error setting startup parameters for the service
8、建议把系统服务wgcloud-agent-release设置为【自动延迟启动】
注意:刚注册完服务,服务不会自动启动,需要先手动把服务启动下,就是右击->【启动】就可以了