如何在CentOS 7.3上安装Apache Tomcat 8.5

Apache Tomcat是由Apache Software Foundation开发的开源Java Servlet实现。 除了Java Servlet之外,Tomcat还实现了其他几种Java服务器技术,包括JavaServer Pages(JSP),Java表达式语言和Java WebSocket。 Tomcat为Java应用程序提供HTTP Web服务器,支持HTTP / 2,用于JSSE和TLS虚拟主机的OpenSSL。

在本教程中,我将向您展示如何在CentOS 7服务器上安装和配置Apache Tomcat 8.5,以及如何在CentOS服务器上安装和配置Java,这是Tomcat的先决条件之一。

先决条件

  • 服务器与CentOS 7 - 64bit
  • 2 GB以上RAM(推荐)
  • 服务器上的根权限

第1步 - 安装Java(JRE和JDK)

在此步骤中,我们将从CentOS存储库安装Java JRE和JDK。 我们将使用yum命令在服务器上安装Java 1.8.11。

运行此命令从yum安装来自CentOS存储库的Java JRE和JDK:

yum -y install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64

这将需要一些时间,等到安装完成。

那么您应该使用以下命令检查Java版本:

java -version

你应该看到类似于下面的结果:

openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-b15)
OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)

第2步 - 配置Java家庭环境

在第一步,我们已经安装了Java。 现在,我们需要在CentOS服务器上配置JAVA_HOME环境变量,以便Java应用程序可以找到正确的Java版本,并且Tomcat需要正确设置JAVA_HOME环境,因此我们需要对其进行配置。

在配置JAVA_HOME环境之前,我们需要知道Java目录在哪里。 使用以下命令检查Java目录:

sudo update-alternatives --config java

Java目录=“/ usr/lib/jvm/ java-1.8.0- openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre

然后使用vim编辑环境文件:

vim /etc/environment

通过添加以下配置添加JAVA_HOME环境变量:

JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre"

保存/ etc / environment文件并退出vim。

接下来,编辑.bash_profile文件并添加JAVA_HOME变量:

vim ~/.bash_profile

在文件末尾粘贴以下配置:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH

保存文件,然后重新加载bash_profile文件。

source ~/.bash_profile

确保没有错误,最后检查JAVA_HOME环境变量:

echo $JAVA_HOME

您将看到Java路径目录。

第3步 - 安装Apache Tomcat 8.5

在这一步中,我们将在用户tomcat下安装Apache Tomcat(我们必须先创建)。

创建一个名为tomcat的用户和组:

groupadd tomcat
useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

注意
-s / bin / false =禁用shell访问
-g tomcat =将新用户分配给组tomcat
-d / opt / tomcat =定义用户的主目录

接下来,转到/ opt目录并使用wget命令下载tomcat:

cd /opt/
wget http://mirror.wanxp.id/apache/tomcat/tomcat-8/v8.5.6/bin/apache-tomcat-8.5.6.tar.gz

提取Tomcat并将“apache-tomcat-8.5.6”目录中的所有文件和目录移动到“tomcat”目录。

tar -xzvf apache-tomcat-8.5.6.tar.gz
mv apache-tomcat-8.5.6/* tomcat/

现在将tomcat目录的所有者更改为tomcat用户和组。

chown -hR tomcat:tomcat tomcat

第4步 - 测试Apache Tomcat

在第3步中,我们安装并配置了tomcat。 在这一步中,我们只想运行一个简短的测试来确保没有错误。

转到tomcat / bin目录并运行命令'startup.sh'来测试Apache Tomcat:

cd /opt/tomcat/bin/
./startup.sh

确保结果是“Tomcat开始”。

Tomcat现在使用端口8080,使用netstat命令检查服务器上的打开端口。

netstat -plntu

或使用Web浏览器访问端口8080的服务器IP地址(在我的情况下为192.168.1.120:8080)。 您将看到Apache Tomcat的默认页面。

接下来,停止Apache Tomcat,因为我们将在最终配置中使用一个systemd服务文件运行Tomcat。 确保tomcat目录由tomcat用户和组拥有。

cd /opt/tomcat/bin/
./shutdown.sh
chown -hR tomcat:tomcat /opt/tomcat/

第5步 - 安装Apache Tomcat服务

在本教程中,我们将使用一个systemd服务文件来运行Apache Tomcat作为tomcat用户,以便于启动和停止服务。 所以下一步是创建一个'tomcat.service'文件。

转到systemd系统目录并创建一个新的文件'tomcat.service'。

cd /etc/systemd/system/
vim tomcat.service

粘贴以下配置:

[Unit]
Description=Apache Tomcat 8 Servlet Container
After=syslog.target network.target

[Service]
User=tomcat
Group=tomcat
Type=forking
Environment=CATALINA_PID=/opt/tomcat/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target

保存文件并退出vim。

重新加载systemd守护程序,然后在引导时启动并添加Apache Tomcat服务。

systemctl daemon-reload
systemctl start tomcat
systemctl enable tomcat

现在通过检查打开的端口8080来检查tomcat是否正在运行。

netstat -plntu

并检查tomcat状态,确保服务处于活动状态。

systemctl status tomcat

第6步 - 配置Apache Tomcat用户

在此步骤中,我们将为Apache Tomcat配置用户。 Tomcat已安装,默认情况下在端口8080上运行,我们可以使用Web浏览器进行访问,但是我们无法访问站点管理器仪表板。 要启用和配置Tomcat用户,请编辑文件“tomcat-users.xml”。

转到tomcat配置目录并使用vim编辑tomcat-users.xml文件。

cd /opt/tomcat/conf/
vim tomcat-users.xml

在第43行下创建一个新行并粘贴以下配置:

<role rolename="manager-gui"/>
<user username="admin" password="password" roles="manager-gui,admin-gui"/>

保存文件并退出vim。

接下来,转到manager目录并编辑context.xml文件。

cd /opt/tomcat/webapps/manager/META-INF/
vim context.xml

评论第19行和第20行。

<Context antiResourceLocking="false" privileged="true" >
<!--  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
</Context>

保存文件并退出vim。

转到主机管理器目录并再次编辑context.xml文件。

cd /opt/tomcat/webapps/host-manager/META-INF/
vim context.xml

再次评论第19和20行。

<Context antiResourceLocking="false" privileged="true" >
<!--  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
</Context>

保存文件并退出,然后重新启动tomcat。

systemctl restart tomcat

第7步 - 配置Firewalld

在CentOS 7中,我们有一个名为firewalld的默认防火墙工具。 它替代了iptables接口并连接到Netfilter内核代码。

在此步骤中,我们将启动firewalld服务并打开端口8080,以便我们可以从网络外部访问Apache Tomcat服务器。

启动firewalld服务,并使用systemctl命令将其添加到启动时。

systemctl start firewalld
systemctl enable firewalld

接下来,使用firewall-cmd命令将apache tomcat端口8080添加到防火墙,并重新加载firewalld服务。

firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload

检查防火墙中是否提供所有服务,并检查Apache Tomcat端口8080是否打开。

firewall-cmd --list-ports
firewall-cmd --list-services

Apache Tomcat端口8080可以从网络外部访问,并且ssh端口也默认打开。

第8步 - 测试

打开您的Web浏览器,并使用端口8080输入您的服务器IP。您将看到Apache Tomcat的默认页面。

http://192.168.1.120:8080

转到管理员信息中心,网址如下:

http://192.168.1.120:8080/manager/html

键入管理员用户名“ admin ”,密码为“ mypassword ”,这是我们在第5步中进行的配置。

现在转到主机管理器仪表板,网址如下:

http://192.168.1.120:8080/host-manager/html

输入您在第5步中设置的管理员用户和密码,您将看到Tomcat虚拟主机管理器。

Apache Tomcat 8.5已安装在CentOS 7服务器上。

链接

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏