@网络老鼠技术小屋

网络老鼠技术小屋-涂飞平的博客空间

使用NSSM将软件安装为Windows系统服务

2 月前 0

这篇文字为实施的同事提供一个简单帮助文档。

在Windows Server中部署业务系统,采用Nginx作负载均衡,Java业务部署在Tomcat中,这种部署方式可以参考博文:Tomcat+Redis+Nginx应对大并发访问
Tomcat的Windows版本中提供了安装为Windows系统服务的脚本:%CATALINA_HOME%/bin/service.bat

Usage: service.bat install/remove [service_name] [/user username]
注:命令行需要以管理员身份 启动!

对于Nginx,Windows版本并没有提供安装为Windows系统服务的工具,只能借助其他工具来部署为服务。

Microsoft提供了rktools 工具包,里面的Instsrv.exe和Srvany.exe配合可以将任何可执行程序(正如Srvany名字说明的那样)安装为系统服务,但过程略显复杂,操作注册表的过程暴露在外面,相对比较危险。

set s32=%windir%\system32
%s32%\instsrv.exe %service_name% %s32%\srvany.exe

//在注册表中更新相应的参数
echo Windows Registry Editor Version 5.00> %reg_file%
echo >> %reg_file%
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\%service_name%\Parameters] >> %reg_file%
echo "Application"="%prog_path%\\%prog_name%" >> %reg_file%//程序地址
echo "AppDirectory"="%prog_path%" >> %reg_file%//程序目录
这里介绍的是另外一个工具NSSM
一个仅需一步就能完成服务部署的工具
1、到NSSM官网下载所需的版本,我们选择nssm 2.24
2、解压目录,找到x64位版本的nssm.exe所在目录,然后以命令行(以管理员权限)启动Windows Service安装程序
nssm.exe install nginx

nssm会弹出选项对话框,按照实际情况填写需要的参数即可。
nnsm_1.png

nnsm_3.png
填写完毕后,直接点击“Install service”安装服务。
nnsm_4.png

安装完毕!!
nnsm_5.png

整个过程极其简单明了。NSSM (Non Sucking Service Manager一个不烂的服务管理软件),名不符实,应该是最好用的服务管理软件。

注:该软件开放源代码,允许使用者随意修改并二次发布该软件!

Licence:
nssm is public domain. You may unconditionally use it and/or its source code for any purpose you wish.
NSSM是完整的服务管理工具,不光是install命令,还有start,stop,remove,status等命令,详细可以使用命令
nssm /?
或进入commands 页面查看。

附件: 点击下载nssm.x64.exe

也可以到`gitee`下载源码
https://gitee.com/sunnytu/nssm

编写评论