CentOS7 下安装Tomcat7/Tomcat8

简介: CentOS7 下安装Tomcat7/Tomcat8

这里以Tomcat7为例,Tomcat8类同。不过有一点需要注意的是不同版本的Tomcat配置文件可能不同,如Tomcat7的server.xml与Tomcat8的server.xml就有细微差别。

【1】下载tomcat


下载地址:http://tomcat.apache.org/download-70.cgi

需要说明的是 ,安装tomcat前请先安装jdk:Centos7下安装jdk1.8


【2】解压tomcat到指定路径

服务器上面肯定会有多个项目多个tomcat,可以将其放在一个文件夹下便于管理。

tar -zxvf apache-tomcat-7.0.82.tar.gz

将其重命名为要设置的端口,便于区分:

mv 源文件 目标文件



aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcxMTI0MTcwODM0NzQ2.png


【3】修改默认端口

可以修改conf目录下的文件server.xml,修改Connector元素(Tomcat的默认端口是8080),需要重新启动Tomcat服务生效.



【4】启动tomcat

进入tomcat安装目录:

bin/startup.sh


若提示权限不够,则进入上一级目录执行如下命令:

sudo chmod -R 777 ./


那么tomcat文件夹和它下面的所有子文件夹的属性都变成了777(读/写/执行权限)。


【5】配置防火墙策略


若在7以下的Centos中,此时浏览器访问tomcat应该出现一只猫的页面。但是这里显示找不到文件,也就是不能访问。


但是端口号并没有任何问题,这又是什么原因导致的呢?


原因就是和windows相比linux有更强的安全机制,在CentOS 7中引入了一个更强大的防火墙——Firewall。


我们需要在Firewall中开启6780端口,也就是将6780端口加入到zone(Firewall的新特性,简单讲它的作用就是定义了网络区域网络连接的可信等级)中。

命令如下:

firewall-cmd --zone=public --add-port=6780/tcp --permanent


这样就成功的将6780端口加入了public区域中,permanent参数表示永久生效,即重启也不会失效,最后不要忘记更新防火墙规则:

firewall-cmd --reload

OK,下面看一下public区域下所有已打开的端口,命令如下:

firewall-cmd --zone=public --list-ports

可以看到6780端口已经成功打开:


部署项目进行测试:



【6】注册系统服务并开机启动

这一点在正式环境中是至关重要的。

① 修改 tomcat bin 目录的catalina.sh文件


如下图所示,添加如下命令:

CATALINA_PID="$CATALINA_BASE/tomcat.pid"


aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcxMTI5MTUyODAyMzYw.png

② 在/usr/lib/systemd/system下面建立tomcat.service文件

[Unit]  
Description=Tomcat7  
After=syslog.target network.target remote-fs.target nss-lookup.target  
[Service]  
Type=forking 
PIDFile=/opt/hh/app/servers/tomcat6780/tomcat.pid
ExecStart=/opt/hh/app/servers/tomcat6780/bin/startup.sh
ExecReload=/bin/kill-s HUP $MAINPID
ExecStop=/bin/kill-s QUIT $MAINPID
PrivateTmp=true
Environment='JAVA_HOME=/usr/java/jdk1.8.0_144'  
[Install]  
WantedBy=multi-user.target  


[unit]配置了服务的描述,规定了在network启动之后执行。


[service]配置服务的pid,服务的启动,停止,重启。


[install]配置了使用用户。


因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。

同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。

多个tomcat可以配置在多个目录下,互不影响

使服务开机启动:

systemctl enable tomcat.service

【7】常用命令

查看tomcat的状态

systemctl status tomcat.service

配置开机启动

systemctl enable tomcat.service

删除开机启动

systemctl disable tomcat.service

启动tomcat

systemctl start tomcat.service

停止tomcat

systemctl stop tomcat.service

重启tomcat

systemctl restart tomcat.service

其中.service可以省略。


【8】查看Tomcat版本


查看tomcat版本,需先进入omcat/bin目录,然后执行命令./version.sh

实例如下:

[root@bogon bin]# ./version.sh
Using CATALINA_BASE:   /opt/zzhwtt/tomcats/tomcat6781
Using CATALINA_HOME:   /opt/zzhwtt/tomcats/tomcat6781
Using CATALINA_TMPDIR: /opt/zzhwtt/tomcats/tomcat6781/temp
Using JRE_HOME:        /usr/local/jdk1.7.0_79
Using CLASSPATH:       /opt/zzhwtt/tomcats/tomcat6781/bin/bootstrap.jar
Server version: Apache Tomcat/6.0.37
Server built:   Apr 29 2013 11:34:47
Server number:  6.0.0.37
OS Name:        Linux
OS Version:     2.6.32-431.el6.x86_64
Architecture:   amd64
JVM Version:    1.7.0_79-b15
JVM Vendor:     Oracle Corporation

【9】Tomcat绑定IPV4端口

使用下面的方法可以绑定到IPV4,

<tomcat>/bin目录下新建setenv.sh(如果没有话),然后添加如下内容:

JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true "

通常,你可能不会这样操作。


【10】指定Java环境

如果不想用全局Java环境,那么可以采用指定Java环境。修改tomcat/bin/startup.sh文件,添加如下配置(具体路径写你自己的哦)即可:

export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
export CATALINA_HOME=/usr/local/tomcat8
目录
相关文章
|
10天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
11天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
80 1
Linux系统之Centos7安装cockpit图形管理界面
|
18天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
55 3
|
19天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
34 2
|
21天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
64 2
|
25天前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
35 1
|
25天前
|
监控 安全 Linux
CentOS7下安装配置ntp服务的方法教程
通过以上步骤,您不仅能在CentOS 7系统中成功部署NTP服务,还能确保其配置合理、运行稳定,为系统时间的精确性提供保障。欲了解更多高级配置或遇到特定问题,提供了丰富的服务器管理和优化资源,可作为进一步学习和求助的平台。
57 1
|
7天前
|
存储 安全 Linux
VMware安装CentOS7
【11月更文挑战第11天】本文详细介绍了在 VMware 中安装 CentOS 7 的步骤,包括准备工作、创建虚拟机、配置虚拟机硬件和安装 CentOS 7。具体步骤涵盖下载 CentOS 7 镜像文件、安装 VMware 软件、创建和配置虚拟机硬件、启动虚拟机并进行安装设置,最终完成 CentOS 7 的安装。在安装过程中,需注意合理设置磁盘分区、软件选择和网络配置,以确保系统的性能和功能满足需求。
|
1月前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
238 3