我们常用的Tomcat,不管是在windows下还是linux下基本上都是绿色版本,解压、启动后直接使用。
这就产生了一个问题,不能开机自自动,很不方便,linux下可以添加到/etc/rc.local实现开机自启,windows下也可以添加到开机启动项里;不过注册为系统服务更加方便一些,这里记录一下方法。
检查系统环境
确保64位的操作系统下是64位的Jdk
1 2 3 4 |
F:>java -d64 -version java version "1.7.0_80" Java(TM) SE Runtime Environment (build 1.7.0_80-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode) |
使用tomcat自身工具注册服务
进入到tomcat bin目录下,执行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#注册服务 service.bat install '服务名' #服务名中不能有"-","_",否则在服务中看不到 F:apache-tomcat-7.0.70(zabbix)bin>service.bat install tomcat7070 Installing the service 'tomcat7070' ... Using CATALINA_HOME: "F:apache-tomcat-7.0.70(zabbix)" Using CATALINA_BASE: "F:apache-tomcat-7.0.70(zabbix)" Using JAVA_HOME: "C:Program FilesJavajdk1.7.0_80" Using JRE_HOME: "C:Program FilesJavajdk1.7.0_80jre" Using JVM: "C:Program FilesJavajdk1.7.0_80jrebinserverjvm.dll" The service 'tomcat7070' has been installed. #卸载服务 service.bat remove '服务名' F:apache-tomcat-7.0.70(zabbix)bin>service.bat remove tomcat7070 Removing the service 'tomcat7070' ... Using CATALINA_BASE: "F:apache-tomcat-7.0.70(zabbix)" The service 'tomcat7070' has been removed |
设置服务依赖关系
如果项目中有多个tomcat,有先后启动顺序的话,可以使用到服务里的依赖关系,比如tomcat8080启动时候监测tomcat8081是否启动(8080依赖8081),就可以按下边这种方法设置。
1 |
sc config "tomcat8080" depend= tomcat8081 |
设置访问自动启动
1 |
set autoconfig enabled={yes|no} |
注册Nginx服务
下载Windows Server 2003 Resource Kit Tools
其实我们只需要里边instsrv.exe、srvany.exe这两个工具
https://www.microsoft.com/en-IE/download/details.aspx?id=17657
注册Nginx服务
安装完上述工具,打开C:Program Files (x86)Windows Resource KitsTools, 复制srvany.exe到nginx.exe同级目录下。
1 |
sc create "Nginx" binPath="D:deploynginx-1.12.1srvany.exe" start=auto |
导入注册表
复制一下内容,保存为.reg格式文件,双击导入到注册表
1 2 3 4 5 |
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNginxParameters] "Application"="D:\deploy\nginx-1.12.1\nginx.exe" "AppParameters"="" "AppDirectory"="D:\deploy\nginx-1.12.1" |
启动关闭服务
1 2 3 4 5 6 7 |
# 启动 C:>net start Nginx Nginx 服务正在启动 . Nginx 服务已经启动成功。 # 关闭 windows下nginx默认会启动两个进程,如果使用net stop Nginx的话只能关闭一个nginx进程,不能完全关闭 taskkill /F /IM nginx.exe |
参考资料:
http://www.cnblogs.com/xwdreamer/p/3411986.html
http://wlbbswl.iteye.com/blog/840538
https://blog.csdn.net/qq_16022261/article/details/53836004
http://koda.iteye.com/blog/600725
原文:大专栏 将绿色版Tomcat/Nginx注册成服务,实现开机自启动
原文地址:https://www.cnblogs.com/petewell/p/11597448.html