CentOS 7.6にOpenJDK 11を以下の記事で入れている状態です。
目次
Tomcat9の最新版を確認
Apache Tomcat公式ページ「Binary Distributions」→「Core」からtar.gz版のリンクをコピー。
https://tomcat.apache.org/download-90.cgi
2019/07時点で9.0.22が最新でした。
tar.gzをダウンロードして解凍
/optに解凍するので予めcd /optしておきます。前項でコピーしたtar.gzのURLからwgetでダウンロードします。
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz
[root@spock opt]# wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz
--2019-07-20 21:11:26-- https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz
www-eu.apache.org (www-eu.apache.org) をDNSに問いあわせています... 2a01:4f9:2a:185f::2, 95.216.24.32
www-eu.apache.org (www-eu.apache.org)|2a01:4f9:2a:185f::2|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 10929702 (10M) [application/x-gzip]
`apache-tomcat-9.0.22.tar.gz' に保存中
100%[==================================================================================================>] 10,929,702 3.84MB/s 時間 2.7s
2019-07-20 21:11:30 (3.84 MB/s) - `apache-tomcat-9.0.22.tar.gz' へ保存完了 [10929702/10929702]
[root@spock opt]# ls
apache-tomcat-9.0.22.tar.gz
[root@spock opt]# tar xzvf apache-tomcat-9.0.22.tar.gz
apache-tomcat-9.0.22 apache-tomcat-9.0.22.tar.gz
所有者をtomcatユーザに変更
Tomcatを起動するtomcatユーザを作り、Tomcat関連資源全ファイルの所有者にします。
[root@spock opt]# useradd -s /sbin/nologin tomcat
[root@spock opt]# chown -R tomcat:tomcat ./apache-tomcat-9.0.22
[root@spock opt]# ls -l
合計 10680
drwxr-xr-x. 9 tomcat tomcat 220 7月 20 21:14 apache-tomcat-9.0.22
-rw-r--r--. 1 root root 10929702 7月 5 00:38 apache-tomcat-9.0.22.tar.gz
systemdのサービス定義ファイルを作成
systemctlコマンドでサービス起動する為のファイルを作成します。
vi /etc/systemd/system/tomcat.service。以下の内容を記述して保存。
[Unit]
Description=Apache Tomcat 9
After=network.target
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/opt/apache-tomcat-9.0.22/tomcat.pid
RemainAfterExit=yes
ExecStart=/opt/apache-tomcat-9.0.22/bin/startup.sh
ExecStop=/opt/apache-tomcat-9.0.22/bin/shutdown.sh
ExecReStart=/opt/apache-tomcat-9.0.22/bin/shutdown.sh;/opt/apache-tomcat-9.0.22/in/bstartup.sh
[Install]
WantedBy=multi-user.target
他サービス定義ファイルとパーミッションを揃えておきます。
[root@spock system]# chmod 755 ./tomcat.service
8080ポートを開放
[root@spock system]# firewall-cmd --add-port=8080/tcp --zone=public --permanent
success
[root@spock system]# firewall-cmd --reload
success
Tomcat9起動
systemctl start tomcat。
[root@spock system]# systemctl start tomcat
[root@spock system]# systemctl status tomcat
● tomcat.service - Apache Tomcat 9
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled)
Active: active (exited) since 土 2019-07-20 21:36:18 JST; 18s ago
Process: 6287 ExecStart=/opt/apache-tomcat-9.0.22/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 6287 (code=exited, status=0/SUCCESS)
Tasks: 53
Memory: 109.7M
CGroup: /system.slice/tomcat.service
mq6303 /usr/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-9.0.22/conf/logging.properties -Djava.util.logging.man...
7月 20 21:36:18 spock systemd[1]: Starting Apache Tomcat 9...
7月 20 21:36:18 spock systemd[1]: Started Apache Tomcat 9.
動作確認
ブラウザからhttp://インストールしたCentOSのIP:8080にアクセスしてTomcatトップページが表示されることを確認します。