Tomcat
Apache Tomcat 是一个开源的 Web 服务器,它实现了 Java Servlet、JavaServer Pages、Java Expression Language 和 Java WebSocket 技术。它也可以提供静态 HTML 页面。
本指南描述了如何设置 Tomcat 以交付静态 HTML 页面以及打包为 Web 应用程序归档 (WAR) 的 Web 应用程序。
安装
Java
Tomcat 需要 Java 运行时环境 (JRE),它包含在阿尔派社区仓库的各种软件包中。
安装哪个软件包?首先你需要回答几个问题
- 你需要哪个 Java 版本?
- 你只需要 JRE 还是需要 Java 开发工具包 (JDK)?
在撰写本文时(2021 年 3 月),最流行的 Java 版本是 Java 8 和 Java 11。Java 8 是 Tomcat 版本 9 和 10 的最低要求版本。
如果你计划仅使用 Java 运行 Tomcat,并且不需要 JDK 中包含的工具,你可以利用仅包含 JRE 且不带 GUI 支持的软件包。不带 GUI 支持的软件包也称为“headless”(无头)。
要安装 OpenJDK 8 Java 运行时环境(无 GUI 支持),请执行以下命令
apk add openjdk8-jre-base
要安装 OpenJDK 11(JRE headless),请执行以下命令
apk add openjdk11-jre-headless
要安装 OpenJDK 8,请执行以下命令
apk add openjdk8
要安装 OpenJDK 11,请执行以下命令
apk add openjdk11
要检查当前安装的 Java 版本,请执行以下命令
java -version
Tomcat
Tomcat 必须从 Apache Tomcat 官方网站下载。你需要二进制发行版核心(tar.gz),下载它,将其保存在你可以轻松找到的地方,并将其解压到你选择的文件夹中。在本手册中,我们将假设 Tomcat 被解压到 /opt/tomcat 目录。
要创建 /opt/tomcat 目录,请执行以下命令
mkdir /opt/tomcat
要将二进制发行版解压到 /opt/tomcat 目录,请执行以下命令
tar xvzf apache-tomcat-9.0.44.tar.gz --strip-components 1 --directory /opt/tomcat
要测试你的安装,请执行以下命令
/opt/tomcat/bin/catalina.sh version
你应该看到一个文件夹列表、已安装的 tomcat 版本、操作系统名称、处理器架构等等。如果这失败了,要么是已安装的 tomcat 版本与已安装的 Java 版本不兼容,要么是这两个程序之一没有正确安装。
如果第一个测试成功,你可以通过使用 run 命令运行 catalina.sh 来测试服务器本身。该命令将在你当前的控制台中启动 Tomcat。
/opt/tomcat/bin/catalina.sh run
现在,在运行 Alpine 的同一台计算机上,将浏览器指向 http://127.0.0.1:8080/。你应该看到一个页面,上面写着 如果你看到这个,你已经成功安装了 Tomcat。恭喜你!。
要停止 Tomcat,请按 Control+C。
通常,你不想在当前控制台中启动 Tomcat,而是作为后台进程。要在后台启动 Tomcat,请执行 startup.sh 脚本
/opt/tomcat/bin/startup.sh
要停止 Tomcat,请执行 shutdown.sh 脚本
/opt/tomcat/bin/shutdown.sh
Tomcat 服务脚本
你也可以将 Tomcat 作为 OpenRC 服务启动。
使用以下内容创建 /etc/init.d/tomcat 文件
#!/sbin/openrc-run description="Apache Tomcat" command=/opt/tomcat/bin/catalina.sh command_args=run command_background=true directory=/opt/tomcat pidfile="/run/${RC_SVCNAME}.pid"
使 /etc/init.d/tomcat 文件可执行
chmod +x /etc/init.d/tomcat
现在,你可以使用 OpenRC 启动 Tomcat,如下所示
rc-service tomcat start
要停止 Tomcat,请执行以下命令
rc-service tomcat stop
要在系统启动时启用自动启动,你可以将该服务添加到默认运行级别
rc-update add tomcat default
运行 Tomcat
有两种使用 Tomcat 发布文档的方式:动态 Java 应用程序(例如 wiki、论坛或博客)或静态页面(HTML、图像)。Tomcat 专门用于动态应用程序,这些应用程序通常部署为 WAR 文件。
动态内容
安装 WAR 文件很容易:只需将其复制到 /opt/tomcat/webapps。Tomcat 会自动将其安装到与 WAR 文件同名的文件夹中(.WAR 扩展名之前的内容)。例如,如果你安装 jspwiki.war,你可以在 http://127.0.0.1:8080/jspwiki/ 上打开该 wiki。
静态内容
要交付静态内容,你需要编辑 /opt/tomcat/conf 文件夹中的 server.xml 文件。
在 server.xml 中找到 <Host appBase="webapps"> 部分,并在结束标记 </Host> 之前直接添加条目 <Context docBase="/home/stuff" path="/static" />。将 /home/stuff 替换为你要保存静态文件的文件夹。/static 是你需要打开静态文件的 URL 部分,它可以更改为你喜欢的任何内容。
有关如何使用 Tomcat 提供静态内容 的更详细描述。