たれながし.info

とあるITエンジニアの備忘録

Install Apache Tomcat 11 on RHEL9


はじめに

検証目的でRed Hat Enterprise Linux 9にApache Tomcat 11をインストールしたので、その手順のメモです。
以下のページを参考にしました。
www.tecmint.com

Apache Tomcat 11のインストール

RHEL9.5にTomcat 11.0.2をインストールします。

環境について

OSバージョンはRHEL9.5です。SELinuxは無効です。

# cat /etc/os-release
NAME="Red Hat Enterprise Linux"
VERSION="9.5 (Plow)"

# getenforce
Disabled

Javaのインストール

Tomcat 11ではJava 17以上が必要なので、今回はOpenJDK 17をインストールします。

# yum install java-17-openjdk

# java -version
openjdk version "17.0.14" 2025-01-21 LTS
OpenJDK Runtime Environment (Red_Hat-17.0.14.0.7-1) (build 17.0.14+7-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-17.0.14.0.7-1) (build 17.0.14+7-LTS, mixed mode, sharing)

参考)TomcatJavaバージョンの対応表
Apache Tomcat® - Which Version Do I Want?

参考)RHELが提供するOpenJDKのバージョン情報
OpenJDK のライフサイクルおよびサポートポリシー - Red Hat Customer Portal

Tomcat 11のインストール

Tomcat 11.0.2をDL&解凍する。

# curl -O https://archive.apache.org/dist/tomcat/tomcat-11/v11.0.2/bin/apache-tomcat-11.0.2.tar.gz

# tar xzf apache-tomcat-11.0.2.tar.gz
# ls -l
drwxr-xr-x  9 root root     4096  3月 23 00:23 apache-tomcat-11.0.2
-rw-r--r--  1 root root 13671357  3月 23 00:20 apache-tomcat-11.0.2.tar.gz


システムアカウント tomcatを作成、ディレクトリ所有者を変更、/usr/local/tomcat11に配置にする。

# useradd -r tomcat
※-rは、システムアカウントのオプション

# chown -R tomcat:tomcat apache-tomcat-11.0.2
# mv apache-tomcat-11.0.2 /usr/local/tomcat11
# ls -ld /usr/local/tomcat11
drwxr-xr-x 9 tomcat tomcat 4096  3月 23 00:23 /usr/local/tomcat11


Unitファイルを作成する。

# vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat11/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat11
Environment=CATALINA_BASE=/usr/local/tomcat11

ExecStart=/usr/local/tomcat11/bin/catalina.sh start
ExecStop=/usr/local/tomcat11/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target


Unitファイルの変更を反映し、Tomcatを起動

# systemctl daemon-reload

# systemctl start tomcat.service
# systemctl status tomcat.service
● tomcat.service - Apache Tomcat Server
     Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; preset: disabled)
     Active: active (running) since Sun 2025-03-23 00:34:58 JST; 5s ago


8080/TCPポートを開ける

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

動作確認

ブラウザでアクセスして動作確認する。