UbuntuにTomcat 10をインストールしJava 21で動かしたいが、まだパッケージでは提供されていないため、手動でインストールする。
前提
Java 21がインストール済みであること。
インストールされていない場合はこちらの記事の「Java 21のインストール」を参照のこと。
$ java -version
openjdk version "21" 2023-09-19 LTS
OpenJDK Runtime Environment Temurin-21+35 (build 21+35-LTS)
OpenJDK 64-Bit Server VM Temurin-21+35 (build 21+35-LTS, mixed mode, sharing)
Tomcat 10のインストール
Apache Tomcatのページがら最新版をダウンロードして解凍する。今後のため、シンボリックリンクも作成しておく。
$ wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.15/bin/apache-tomcat-10.1.15.tar.gz
$ tar -xvf apache-tomcat-10.1.15.tar.gz
$ sudo ln -s /opt/apache-tomcat-10.1.15 /opt/tomcat-10
Tomcat 10用の実行ユーザーを作成する。
$ sudo useradd -m -U -d /opt/tomcat-10 -s /bin/false tomcat10
ファイルのオーナーを先ほど作成したユーザーに変更する。
$ sudo chown -R tomcat10: /opt/apache-tomcat-10.1.15
シェルを実行可能にする。
$ sudo sh -c 'chmod +x /opt/tomcat-10/bin/*.sh'
SystemD用のファイルを作成する。
$ sudo vi /usr/lib/systemd/system/tomcat10.service
#
# Systemd unit file for Apache Tomcat
#
[Unit]
Description=Apache Tomcat 10 Web Application Server
After=network.target
[Service]
# Configuration
Environment="JAVA_HOME=/opt/jdk-21"
Environment="JAVA_OPTS=-Djava.awt.headless=true"
Environment="CATALINA_BASE=/opt/tomcat-10"
Environment="CATALINA_HOME=/opt/tomcat-10"
Environment="CATALINA_OPTS=-Xms128m -Xmx1024m -server"
Environment="CATALINA_PID=/opt/tomcat-10/temp/tomcat.pid"
# Lifecycle
Type=forking
ExecStart=/opt/tomcat-10/bin/startup.sh
ExecStop=/opt/tomcat-10/bin/shutdown.sh
Restart=always
PIDFile=/opt/tomcat-10/temp/tomcat.pid
# Logging
SyslogIdentifier=tomcat10
# Security
User=tomcat10
Group=tomcat10
[Install]
WantedBy=multi-user.target
SystemDの設定ファイルを再読み込みする。
$ sudo systemctl daemon-reload
Tomcat 10を有効にし、起動する。
$ sudo systemctl enable --now tomcat10
Created symlink /etc/systemd/system/multi-user.target.wants/tomcat10.service → /lib/systemd/system/tomcat10.service.
正常起動を確認する。
$ sudo systemctl status tomcat10
● tomcat10.service - Apache Tomcat 10 Web Application Server
Loaded: loaded (/lib/systemd/system/tomcat10.service; enabled; vendor pres>
Active: active (running) since Wed 2023-10-25 05:58:29 UTC; 6s ago
Process: 12815 ExecStart=/opt/tomcat-10/bin/startup.sh (code=exited, status>
Main PID: 12822 (java)
Tasks: 35 (limit: 18910)
Memory: 101.2M
CPU: 6.485s
CGroup: /system.slice/tomcat10.service
mq12822 /opt/jdk-21/bin/java -Djava.util.logging.config.file=/opt/>
10月 25 05:58:29 hostname systemd[1]: Starting Apache Tomcat 10 Web Applicati>
10月 25 05:58:29 hostname tomcat10[12815]: Tomcat started.
10月 25 05:58:29 hostname systemd[1]: Started Apache Tomcat 10 Web Applicatio>
「Tomcat 10をJava 21で動かす」への1件のフィードバック