参考: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.gz
mv 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=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/tomcat.pid
ExecStart=/usr/local/tomcat/bin/startup.sh &>/dev/null
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
复制代码
4、增加 tomcat.spec
vim rpmbuild/SPECS/tomcat.spec
复制代码
内容如下
%define path_name usr/local
%define name_ tomcat-8.5.59
Name: tomcat
Version: 8.5.59
Release: 1%{?dist}
Summary: tomcat
Group: tomcat
License: GPL
URL: https://tomcat.apache.org/
Packager: tomcat
Vendor: tomcat
Source0: tomcat-8.5.59.tar.gz
Source1: tomcat.service
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
%description
tomcat
%prep
mkdir -pv %{buildroot}/%{path_name}
%setup -q
%install
mkdir -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
%post
ln -s $RPM_BUILD_ROOT/%{path_name}/%{name_}/ $RPM_BUILD_ROOT/%{path_name}/tomcat
%postun
rm -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_64
rpm -ivh tomcat-8.5.59-1.el7.x86_64.rpm
复制代码
评论