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
目录
相关文章
|
6月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
1245 69
|
5月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
2247 3
|
6月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
567 78
|
7月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
319 80
|
5月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
1173 16
|
6月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
538 10
|
7月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
683 2
|
6月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
582 0
|
6月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。