如何在Ubuntu 16.04上安装Apache Tomcat 8

第1步:安装Java
Tomcat要求在服务器上安装Java,以便可以执行任何Java Web应用程序代码。我们可以通过apt-get安装OpenJDK来满足这个要求。
首先,更新apt-get包索引:
sudo apt-get update
然后使用apt-get安装Java Development Kit包:
sudo apt-get install default-jdk
第2步:创建Tomcat用户
首先,创建一个新tomcat组:
sudo groupadd tomcat
接下来,创建一个新 tomcat用户。我们将使该用户成为该tomcat组的成员,其主目录/opt/tomcat(我们将安装Tomcat)和shell /bin/false(因此没有人可以登录该帐户):
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
第3步:安装Tomcat
在Tomcat 8下载页面上找到最新版本的Tomcat 8 。在撰写本文时,最新版本为8.5.5,但如果可用,则应使用更高版本的稳定版本。在Binary Distributions部分下,然后在Core列表下,将链接复制到“tar.gz”。

接下来,切换到/tmp服务器上的目录。这是一个很好的下载短暂项目的目录,比如Tomcat tarball,在提取Tomcat内容后我们不需要它:
cd /tmp
使用curl下载,您从Tomcat网站复制的链接:
curl -O http://apache.mirrors.ionfish.org/tomcat/tomcat-8/v8.5.5/bin/apache-tomcat-8.5.5.tar.gz
我们将Tomcat安装到该/opt/tomcat目录中。创建目录,然后使用以下命令将存档解压缩到它:
sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1
第4步:更新权限
切换到我们解压缩Tomcat安装的目录:
cd /opt/tomcat
改变/opt/tomcat及其子目录下的所有文件的属组为book:
sudo chgrp -R tomcat /opt/tomcat
接下来,为tomcat组提供对conf目录及其所有内容的读访问权限,并执行对目录本身的访问:

sudo chmod -R g+r conf
sudo chmod g+x conf
使webapps,work,temp,和logs目录的所有者是tomcat:
sudo chown -R tomcat webapps/ work/ temp/ logs/

第5步:创建systemd服务文件
Tomcat需要知道Java的安装位置。此路径通常称为“JAVA_HOME”。
查找该位置的最简单方法是运行此命令:
sudo update-java-alternatives -l

输出信息:
java-1.8.0-openjdk-amd64       1081       /usr/lib/jvm/java-1.8.0-openjdk-amd64

JAVA_HOME可以通过从最后一列并附/jre加到末尾的输出来构造正确的变量。
JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre
打开一个名为tomcat.service的/etc/systemd/system目录中键入:
sudo nano /etc/systemd/system/tomcat.service
将以下内容粘贴到您的服务文件中。您可能还需要修改在以下位置指定的内存分配设置CATALINA_OPTS:
/etc/systemd/system/tomcat.service

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

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

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

完成后,保存并关闭文件。
接下来,重新加载systemd守护程序,以便它知道我们的服务文件:
sudo systemctl daemon-reload
键入以下命令启动Tomcat服务:
sudo systemctl start tomcat
键入以下内容,仔细检查它是否正常启动:
sudo systemctl status tomcat
在这里插入图片描述
步骤7:配置Tomcat Web管理界面
为了使用Tomcat附带的管理器Web应用程序,我们必须添加一个登录到我们的Tomcat服务器。我们将通过编辑tomcat-users.xml文件来完成此操作:
sudo nano /opt/tomcat/conf/tomcat-users.xml
您将需要添加可以访问manager-gui和admin-gui(Tomcat附带的Web应用程序)的用户。请务必将用户名和密码更改为安全的内容:

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

完成后保存并关闭文件。

默认情况下,较新版本的Tomcat将对Manager和Host Manager应用程序的访问限制为来自服务器本身的连接。由于我们在远程计算机上安装,您可能希望删除或更改此限制。要更改对这些的IP地址限制,请打开相应的context.xml文件。

对于Manager应用,请键入:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
对于Host Manager应用程序,请键入:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
在内部,注释掉IP地址限制以允许来自任何地方的连接。或者,如果您只允许访问来自您自己的IP地址的连接,您可以将您的公共IP地址添加到列表中:
Tomcat webapps的context.xml文件

<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服务:
sudo systemctl restart tomcat

步骤8:访问Web界面
现在我们已经创建了一个用户,我们可以在Web浏览器中再次访问Web管理界面。再一次,您可以在浏览器中输入服务器的域名或IP地址,然后在端口8080上输入正确的界面:
http://server_domain_or_IP:8080
您看到的页面应该与您之前测试时给出的页面相同:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_39467231/article/details/87928792