如何在 Debian 11/10 上安装 Tomcat 10

2023-11-11

Apache Tomcat 是一个开源 Web 服务器,带有用于发布基于 Java 的 Web 应用程序的 Servlet 容器。 Tomcat 是由 Apache 软件基金会支持下的开放开发者社区开发和维护的。截至目前,Tomcat 10 是可在开发和生产环境中安装的最新稳定版本。要了解有关 Apache Tomcat 的更多信息,请访问 apache 的官方网站http://tomcat.apache.org/.

本教程将帮助您如何在 Debian 11 和 Debian 10 Buster Linux 系统上安装 Apache Tomcat 10。

先决条件

具有 sudo 特权帐户 shell 访问权限的正在运行的 Debian 10 系统。

您可以从以下位置获得更便宜的实例数字海洋托管。

第 1 步 – 安装 Java

Tomcat 10 需要在系统上安装 JRE 8 或更高版本。如果您的系统没有安装JRE,请使用以下命令安装OpenJDK以满足要求。

sudo apt update 
sudo apt install default-jdk -y 

检查当前活动的 Java 版本:

java -version 

openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode, sharing)

第 2 步 – 创建 Tomcat 用户

最好有一个专门的用户帐户来运行 Tomcat 服务器。创建一个名为“tomcat”的新用户,建议出于安全目的主要用于生产部署。

要创建新帐户,请输入:

sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat 

上面的命令将创建一个名为“的用户和组”tomcat” 在你的系统中。

步骤 3 – 在 Debian 10 上安装 Tomcat

Apache Tomcat 开发团队会不定期发布最新版本的 Tomcat。因此,最好检查从以下位置下载最新的 Tomcat 版本:官方下载服务器。使用以下命令下载 Tomcat 10。

wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz 

下载存档文件后,将文件解压到 tomcat 主目录 /opt/tomcat 下,并跳过父文件夹。

sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1 

接下来,设置适当的文件权限。

sudo chown -R tomcat:tomcat /opt/tomcat/ 
sudo chmod -R u+x /opt/tomcat/bin 

现在,您的系统上已安装了最新的 Tomcat 应用程序。

步骤 4 – 创建 Tomcat 用户

现在,使用用户帐户配置您的 tomcat 以保护管理/经理页面的访问。为此,请编辑conf/tomcat-users.xml在编辑器中创建文件并将以下代码粘贴到 标记中。我们建议使用高安全密码更改以下配置中的密码。

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

添加以下值。确保更改管理员和经理访问的密码。


<!-- user manager can access only manager section -->
<role rolename="manager-gui" />
<user username="manager" password="_SECRET_PASSWORD_" roles="manager-gui" />

<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="_SECRET_PASSWORD_" roles="manager-gui,admin-gui" />
  

保存文件并关闭。

第 5 步 – 启用远程 Tomcat 访问

默认 Tomcat 管理器和主机管理器应用程序只能由本地主机访问。要允许从远程系统访问这些页面,您需要修改以下配置文件。

您可以允许特定远程系统或允许所有远程系统。编辑context.xml管理器和主机管理器应用程序的文件:

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

注释掉为 IP 地址限制添加的部分,以允许从任何地方进行连接。

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

另外,编辑主机管理器接口的 context.xml 并注释与上面类似的部分。

sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

保存所有文件并关闭它们。

步骤 6 – 创建 Tomcat Systemd 单元文件

Tomcat提供了bash脚本来启动、停止服务。但是,为了简单起见,创建一个启动脚本来将 Tomcat 作为 systemd 服务进行管理。让我们创建一个包含以下内容的 tomcat.service 文件:

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

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

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

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

[Install]
WantedBy=multi-user.target
  

重新加载 systemd 守护程序服务以加载新创建的文件。

sudo systemctl daemon-reload 

现在,首次启动 Tomcat 应用程序。

sudo systemctl start tomcat.service 

接下来,启用 tomcat 服务自动启动以供后续系统启动。这对于生产部署更为重要。

sudo systemctl enable tomcat.service 

到目前为止,tomcat 应用程序正在您的系统上运行。您可以通过执行以下命令来验证服务状态。确保状态显示“active (running)“.

sudo systemctl status tomcat.service 

就是这样。您已在 Debian 系统上成功配置 Tomcat 10。

第 7 步 – 访问 Tomcat Web 界面

默认 Tomcat 服务器在端口 8080 上运行。当您在系统上配置 Tomcat 时,您可以从系统访问 Web 界面。您可以通过在浏览器中输入服务器的IP地址或指向该服务器的域名,然后输入端口8080来访问tomcat界面:

Change tecadmin.local与您的服务器 IP 或域或本地主机。


http://tecadmin.local:8080/
  

您将看到如下页面:

Tomcat Manager App 是与 Tomcat 服务器应用程序打包在一起的 Web 应用程序。 Manager 界面为我们提供了管理已部署的 Web 应用程序所需的基本功能。

Click Manager App按钮主页或直接输入/manager在主 Tomcat 服务器的浏览器 url 中访问它。


http://tecadmin.local:8080/manager/
  

Tomcat Host Manager App 是另一个与 Tomcat 服务器应用程序打包在一起的 Web 应用程序。用于在 Tomcat 服务中创建/删除虚拟主机。虚拟主机允许您在单个服务器上定义多个主机名。

Click Host Manager按钮主页或直接输入/host-manager主 Tomcat 服务器中的 url 来访问它。


http://tecadmin.local:8080/host-manager/
  

结论

恭喜,您在 Debian 系统上拥有了正在运行的 Tomcat 服务器。您可以使用 tomcat 服务器部署基于 Java 的应用程序。

您可能还需要创建Tomcat 中的虚拟主机或使用以下方法保护您的 Tomcat 应用程序让我们加密 SSL 证书.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Debian 11/10 上安装 Tomcat 10 的相关文章

随机推荐

  • .net 中常用的正则表达式整理

    相信很多伙伴都跟我一样有关于正则表达式的爱和恨 怎么说呢 因为正则表达式规则繁多且复杂 想一个一个学 全部精通 需要耗费很长时间和精力 但是我们用的地方并不是很多 所以我觉得这类东西需要做成类似工具 需要的时候去查一下 平时不用花时间去认真
  • Docker和Dockerfile常用命令总结及微服务打包Docker镜像

    一 Docker 常用命令总结 1 帮助命令 查看docker的所有命令详情 docker help 查看docker对应命令的使用详情 docker 命令 help 如 查看docker images的使用方法 docker images
  • 《A Graduate Course in Applied Cryptography》Chapter 18 Protocols for identification and login(1)

    原文教材 与 参考资料 Boneh Dan Shoup Victor A Graduate Course in Applied Cryptography J 该书项目地址 可以免费获取 http toc cryptobook us 博客为对
  • 聊聊TCP协议的粘包、拆包以及http是如何解决的?

    目录 一 粘包与拆包是什么 二 粘包与拆包为什么发生 三 遇到粘包 拆包怎么办 解决方案1 固定数据大小 解决方案2 自定义请求协议 解决方案3 特殊字符结尾 四 HTTP如何解决粘包问题的 4 1 读取请求行 请求头 响应行 响应头 4
  • Fourth season eleventh episode,Phoebe wants to be her brother‘s surrogate mother(has baby for him)??

    Scene Central Perk Frank and Alice are there talking with Phoebe Phoebe Oh my God I can t believe my little brother is m
  • 【Ubuntu14.04安装】网络初始化配置

    一 环境 1 Ubuntu Server 14 04 2 Vmware Workstation 9 0 3 物理机 Windows7 64bit i5 3470 3 20Hz 8GB 二 基本点 1 弄清楚物理机和虚拟机之间的连接途径有三种
  • BroadcastReceiver普通广播、有序广播、拦截广播、本地广播、Sticky广播、系统广播

    http blog csdn net qq 30379689 article details 53341313 前言 BroadcastReceiver的简介 普通广播 自定义广播 有序广播 拦截广播 本地广播 Sticky广播 系统广播
  • 直流电机PID调速

    文章写的是基于数字PID控制器的闭环电机速度控制系统 系统以STC89C51单片机为控制核心 通过电机驱动L298N 这里因为所用电机是个小马达 额定电流和堵转电流不算大 所以用的是TC1508S做驱动 控制电机转速 电机转速控制采用PWM
  • 2013年CSDN高校俱乐部全国百所高校巡讲讲师招募

    CSDN高校俱乐部 以下简称 俱乐部 是由全球最大中文IT技术社区CSDN发起的 由全国各高校在校生代表自发加入的IT技术学习型组织 CSDN由此搭建起行业与校园之间的桥梁 公益为各俱乐部提供行业资讯 技术学习 专家交流 技术竞赛等学习服务
  • markdown绘图插件----mermaid简介

    作者 黄永刚 mermaid简介 当撰写文档的时候 对于流程图的生成大多使用Visio等繁重的工具 没有一种轻便的工具能够画图从而简化文档的编写 就像markdown那样 mermaid解决这个痛点 这是一个类似markdown语法的脚本语
  • [PDDL人工智能] 02.PDDL规划领域定义语言之语法理解和示例详解

    智能规划来源于人工智能对理性行为研究 针对一个具体行为的实施目的 开展动作规划以模拟或指导行为的实施 是AI开展研究的关键问题 本文主要介绍PDDL规划领域定义语言的基础语法知识和示例详解 希望文章对您有所帮助 该系列文章主要介绍PDDL人
  • 如何在 Debian 11 上安装 NVM

    NVM 代表 Node Version Manager 它是一个用于安装 Node js 的命令行实用程序 它只允许程序员在他们的帐户中安装 Node js 这意味着安装是根据用户特定完成的 单个系统中的所有用户都有自己的 Node js
  • 如何在 Ubuntu 18.04 中添加交换空间

    交换对于需要比物理可用内存更多的 RAM 的系统非常有用 如果内存已满并且系统需要更多 RAM 才能正常运行应用程序 它会检查交换空间并在那里传输文件 一般来说 交换区是硬盘的一部分 用作系统上的 RAM 我有一个正在运行的虚拟机 上面没有
  • 如何在 Apache 中配置 X-Frame-Options

    X Frame Options 用作 HTTP 响应标头 这可以防止您的网站内容嵌入到其他网站中 根据此值 浏览器允许其他站点在 iframe 中打开网页 它还可以保护您的 Apache Web 服务器免受点击劫持攻击 X Frame Op
  • 如何在基于 Debian 的系统上从源代码安装 Wine

    作为 Windows 程序的狂热用户 您可能会发现有时需要在 Ubuntu 系统上使用特定程序 尽管还有其他选项 例如虚拟机或 Wine 等程序 它有助于在 Linux 上运行 Windows 程序 但它们涉及一些工作 而且并不是运行这些程
  • 了解互联网协议 (IP)

    数字时代的定义是连通性 从个人消息传递到商业通信再到国际政府关系 几乎所有交互都是通过万维网进行的 互联网协议 IP 是这个庞大网络的核心 可确保通信顺畅可靠 本文旨在阐明我们数字生活的这一基本方面 什么是互联网协议 IP 从最广泛的意义上
  • 如何使用 Rsyslog 和 MySQL 设置 LogAnalyzer

    本文是文章的第二部分使用 MySQL 和 LogAnalyzer 设置 Rsyslog在 CentOS RHEL 系统上 在里面第一部分我们已经将Rsyslog与MySQL数据库服务器集成 所有日志现在都保存在数据库中 下面是我们在第 1
  • 如何在 Ubuntu 22.04 上安装 Linux、Nginx、MySQL 和 PHP(LEMP Stack)

    Linux操作系统是非常流行且广泛使用的服务器操作系统 它为世界上大多数网站提供支持 包括雅虎 谷歌和 Facebook 等一些最著名的网站 逻辑首字母缩略词 LAMP 通常用来指自由和开源软件的混合物 这些软件经常一起使用来创建可以处理动
  • 如何统治科技世界?

    谷歌 Facebook 苹果和微软等科技巨头正在真正统治世界 他们不仅在商业和技术领域做出了贡献 而且还大力投资于社会责任项目 当他们从车库或大学宿舍起步时 是什么让他们成为科技界的巨头 他们的成功有很多因素 但所有这些科技巨头都有一些共同
  • 如何在 Debian 11/10 上安装 Tomcat 10

    Apache Tomcat 是一个开源 Web 服务器 带有用于发布基于 Java 的 Web 应用程序的 Servlet 容器 Tomcat 是由 Apache 软件基金会支持下的开放开发者社区开发和维护的 截至目前 Tomcat 10