如何在Ubuntu 20.04上安装Tomcat

Apache Tomcat(或简称Tomcat)是最流行和使用最广泛的Java应用程序服务器。 它是由Apache软件基金会(ASF)开发的开源Web服务器和servlet容器。 在本教程中,我们将指导您完成在Ubuntu 20.04 VPS上安装Tomcat 9的步骤。

Tomcat还是Jakarta EE(以前的Java EE)技术的子集的开源软件实现。 Tomcat执行Java servlet,并呈现包含Java Server Page编码的Web页面。 通过使用Tomcat,您可以在旨在帮助您更快,更有效地开发Java应用程序的服务器上运行Java应用程序。 让我们开始在Ubuntu 20.04 VPS上安装Tomcat。

要求

确保您的服务器满足以下最低要求:

  • 就本教程而言,我们将使用运行Ubuntu VPS 20.04 LTS的服务器。
  • 完全SSH根访问或具有sudo特权的用户也是必需的。
  • Java 8或更高版本。

1.入门

使用SSH登录到Ubuntu 20.04 VPS:

ssh [email protected]_Address -p Port_number

确保将“ IP_Address”和“ Port_number”替换为服务器的实际IP地址和SSH端口号。

登录后,可以使用以下命令检查服务器上是否安装了正确的Ubuntu版本:

# lsb_release -a

您应该将其作为输出:

Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal

然后,运行以下命令以确保服务器上所有已安装的软件包已更新为最新的可用版本。

# apt update && apt upgrade -y

2.安装Java

Tomcat 9需要Java版本8或更高版本。我们可以使用以下命令检查Java是否已安装:

# which java

如果没有输出,则表示服务器上尚未安装Java。 我们可以安装Oracle JDK或OpenJDK。 我们需要在系统上安装Java版本8或更高版本才能运行Tomcat9。我们可以使用以下命令安装默认的JDK版本11,该版本在内置的Ubuntu 20.04存储库中可用:

# apt install default-jdk -y

安装完成后,我们可以使用以下命令检查版本:

# java --version
[email protected]:~# java --version
openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

3.安装Tomcat 9

在编写本教程时,要下载的最新稳定Tomcat是9.0.35版。 您可以导航至https://tomcat.apache.org/download-90.cgi以获取最新版本(如果有)。 要继续安装,请先下载二进制分发文件。

# wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz -O tomcat.9.0.35.tar.gz

在本文中,我们将Tomcat安装到 /opt/tomcat 目录。 让我们创建目录并在那里解压缩下载的文件。

# mkdir /opt/tomcat
# tar xzvf tomcat.9.0.35.tar.gz -C /opt/tomcat --strip-components=1

4.添加一个Tomcat用户

以root用户身份运行Tomcat不是一个好主意,因此出于安全原因,我们将创建一个新的系统用户:

# useradd -r tomcat -d /opt/tomcat --shell /bin/false

创建Tomcat系统用户后,我们需要更新该所有者的所有权 /opt/tomcat tomcat用户的目录:

# chown tomcat: -R /opt/tomcat/

5.为Tomcat创建系统服务文件

通过运行以下命令来检查Tomcat的主目录:

# update-java-alternatives -l

输出量

[email protected]:~# update-java-alternatives -l
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64

我们需要Tomcat systemd文件第三列的值来设置 JAVA_HOME 环境变量。

# nano /etc/systemd/system/tomcat.service

将以下内容粘贴到systemd服务文件中,然后将其保存。

[Unit]
Description=Apache Tomcat
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

ExecReload=/bin/kill $MAINPID
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

保存更改,然后启动Tomcat。

# systemctl daemon-reload
# systemctl start tomcat

Tomcat应该立即启动,您可以使用以下命令进行检查:

[email protected]:~# systemctl status tomcat
● tomcat.service - Apache Tomcat
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
Active: active (running) since Mon 2020-06-01 03:43:31 CEST; 1h 14min ago
Process: 12975 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 12997 (java)
Tasks: 30 (limit: 2286)
Memory: 253.4M
CGroup: /system.slice/tomcat.service
└─12997 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.ap>

Jun 01 03:43:31 ubuntu20 systemd[1]: Starting Apache Tomcat...
Jun 01 03:43:31 ubuntu20 startup.sh[12975]: Tomcat started.
Jun 01 03:43:31 ubuntu20 systemd[1]: Started Apache Tomcat.

现在,您应该可以在以下位置访问Tomcat http://your-server-IP:8080

如何在Ubuntu 20.04上安装Tomcat

为了使Tomcat在启动时自动运行,我们需要启用systemd服务文件。 您可以这样做:

# systemctl enable tomcat

6.配置Tomcat

为了能够访问Tomcat Manager,我们需要为Tomcat创建一个用户。 让我们继续编辑 tomcat-users.xml 文件

# nano /opt/tomcat/conf/tomcat-users.xml

然后在结束行之前添加以下行 </tomcat-users>:

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

别忘了更换 M0d1fyth15 使用实际的强密码。

我们需要进行其他配置,因为默认情况下Tomcat限制对Manager和Host Manager的访问,它仅允许来自服务器IP地址本身的连接。 要更改这些IP地址的限制,请打开相应的context.xml文件。

要删除对Manager App的限制,我们需要对此进行修改 /opt/tomcat/webapps/manager/META-INF/context.xml 文件。 并且,要消除对主机管理器的限制,我们需要修改 /opt/tomcat/webapps/host-manager/META-INF/context.xml 文件。

在这些文件中找到这两行:

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />

然后将其注释掉。 这些行应如下所示:

<!-- 
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" /> 
-->

就是这样,您应该能够使用您先前创建的用户凭证来访问Tomcat Manager和Host Manager。

如何在Ubuntu 20.04上安装Tomcat

这就是您需要做的一切–您现在可以在Ubuntu 20.04 VPS上正常安装Tomcat。

对于不是系统管理员的开发人员来说,开发受益于服务器环境的应用程序可能会很复杂。 这就是我们的托管Tomcat托管服务的所在。我们的管理员可以帮助您快速轻松地完全设置并运行您的项目。 他们还维护并保持一切正常运行,如果您有任何要求,他们也可以帮助您。

如果本指南对您有用,并且可以帮助您在系统上运行Tomcat,请考虑使用我们的共享快捷方式在社交网络上共享此帖子,或者在评论部分中留下评论,让我们知道您的安装体验。 谢谢。

Sidebar