参考:https://www.cnblogs.com/lc161616/p/9030643.html
环境要求
Tomcat 版本: 8.5.59
操作系统:centos7
常用命令
systemctl daemon-reload #有时服务卸载之后,重新安装会报错,执行此方法
systemctl status -l tomcat # 查看服务状态
systemctl start tomcat #启动服务
systemctl stop tomcat #停止服务
下面所有命令使用 root 用户执行,默认工作目录为/root,若修改目录可能会有错误
一、准备 tomcat 包
1、下载 tomcat
 wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.59/bin/apache-tomcat-8.5.59.tar.gz
       复制代码
 2、解压 tomcat
 tar -zxvf apache-tomcat-8.5.59.tar.gzmv apache-tomcat-8.5.59 tomcat-8.5.59
       复制代码
 
3、增加 pid 文件配置
 vim tomcat-8.5.59/bin/catalina.sh
       复制代码
 在文件上部分增加
 CATALINA_PID=/run/tomcat.pid
       复制代码
 4、修改编码
 vim tomcat-8.5.59/conf/server.xml
       复制代码
 增加编码:
 <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443"                URIEncoding="UTF-8" />
       复制代码
 
5、压缩
 tar -zcvf tomcat-8.5.59.tar.gz tomcat-8.5.59/
       复制代码
 注:tomcat 文件名保持一致,需要加上版本号,在后续步骤中需要
二、安装打包工具
三、准备 rpm 包
1、创建工作目录
 mkdir -pv rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
       复制代码
 2、拷贝 tomcat
 cp tomcat-8.5.59.tar.gz rpmbuild/SOURCES/
       复制代码
 3、增加 tomcat.service 文件
 vim rpmbuild/SOURCES/tomcat.service
       复制代码
 内容如下:
 [Unit]Description=TomcatAfter=syslog.target network.target remote-fs.target nss-lookup.target
[Service]Type=forkingPIDFile=/run/tomcat.pidExecStart=/usr/local/tomcat/bin/startup.sh &>/dev/nullExecReload=/bin/kill -s HUP $MAINPIDExecStop=/bin/kill -s QUIT $MAINPIDPrivateTmp=true
[Install]WantedBy=multi-user.target
       复制代码
 
4、增加 tomcat.spec
 vim rpmbuild/SPECS/tomcat.spec
       复制代码
 内容如下
 %define path_name usr/local%define name_ tomcat-8.5.59Name: tomcatVersion: 8.5.59Release: 1%{?dist}Summary: tomcatGroup: tomcatLicense: GPL URL: https://tomcat.apache.org/Packager: tomcatVendor: tomcatSource0: tomcat-8.5.59.tar.gzSource1: tomcat.serviceBuildRoot: %{_tmppath}/%{name}-%{version}-buildroot%description tomcat %prepmkdir -pv %{buildroot}/%{path_name}%setup -q %installmkdir -pv $RPM_BUILD_ROOT/%{path_name}/%{name_}/var cp -rf * $RPM_BUILD_ROOT/%{path_name}/%{name_}/%{__install} -p -D %{SOURCE1} %{buildroot}/usr/lib/systemd/system/tomcat.service %postln -s $RPM_BUILD_ROOT/%{path_name}/%{name_}/ $RPM_BUILD_ROOT/%{path_name}/tomcat %postunrm -fr /%{path_name}/%{name_}rm -fr /%{path_name}/tomcat %files%defattr(-,root,root,-)%attr(0755,root,root) /usr/local/%attr(0755,root,root) /usr/lib/systemd/system/tomcat.service%attr(0755,root,root) /usr/local/tomcat-8.5.59/var %changelog* Sat Oct 24 2015 yeho  1.15-1- Initial version
       复制代码
 
四、制作 rpm 包
 rpmbuild -bb rpmbuild/SPECS/tomcat.spec
       复制代码
 
五、安装
 cd rpmbuild/RPMS/x86_64rpm -ivh tomcat-8.5.59-1.el7.x86_64.rpm
       复制代码
 
评论