java

Tomcat9をCentOS7&OpenJDK11で起動

投稿日:2019年7月24日

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トップページが表示されることを確認します。

-java
-

執筆者:

関連記事

ブラウザでRSA暗号化したデータをサーバで復号する(Angular + JSEncrypt、Spring MVC)【前編】

セキュリティ的にクリティカルなデータをクライアントブラウザで暗号化保存するようにしてみます。 通信経路はHTTPSで暗号化されていてもスマホに重要なデータが平文で残っていたら珠に傷です。 目次1 環境 …

Stripe+Java+Payment Request APIでApple Pay、Google Payを使ったテストWeb決済をしてみる

自分で作ったサービスを運用してチャリンチャリンしたい・・・エンジニアならこんな夢、一度は見たことがあるんじゃないでしょうか。 夢を実現する為、以前Stripeのcheckout.jsを使ったテストWe …

JavaでRSA暗号を使う際にCRYPTREC暗号リストに足元をすくわれる可能性を回避する

標準的な暗号しか使わないケースでもJavaでRSAを使う時はBouncyCastleを入れておいた方が無難、という話です。 “ECB”という文字列がプログラム中にあると監査に引 …

IVS対応フォント「IPAmj明朝」で使えるフォントをWeb上に一覧表示してみる(2)

前回の続きです。One IT ThingIVS対応フォント「IPAmj明朝」で使えるフォントをWeb上に一覧表示してみる(1)https://one-it-thing.com/2098IPAmj明朝フ …

IPAmj明朝のttfファイルをJVMに読み込ませてSwingで表示(要Java11)

目次1 はじめに2 Java11でSwingがIVSを認識するようになった3 Java Swingソース4 動作確認4.1 Java 8(1.8.0_202)で実行4.2 Java 11(11.0.2 …

 

shingo.nakanishi
 

東京在勤、1977年生まれ、IT職歴2n年、生涯技術者として楽しく生きることを目指しています。デスマに負けず健康第一。