LoginSignup
2
3

More than 5 years have passed since last update.

Tomcat v8 on CentOS7

Last updated at Posted at 2017-04-10

まえがき

Javaアプリケーションサーバとして、みんな大好きなTomcatをCentOS7上でyumなしで構築するときのメモ。
特に理由がない限り、yum使うほうが全然早いと思います。

前提

  • CentOS7.3を想定
  • OpenJDKではなく、OracleオリジナルのJDKを使用
  • tomcatはyum経由でインストールするのではなく、公式から落としたアーカイブから個別にインストールする

構築作業

下準備

tomcatユーザを追加(ユーザ名は何でも良いがわかりやすく)

[root@localhost ]# useradd tomcat
[root@localhost ]# passwd tomcat

Javaインストール

下記URLからJDKのrpmをダウンロード
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
※agree押したりなどする必要があるのでwget/curlで持ってくるのが厳しい

落とした.rpmを対象サーバに持っていく
※私の場合は自PCに落として、対象サーバにsftpで持っていきました

[root@localhost ]# yum localinstall jdk-8u111-linux-x64.rpm
# rootとtomcatの.bash_profileに export JAVA_HOME=/usr/Java/jdk1.8.0_111/jre/ を追記

tomcatインストール

tomcat公式からバイナリを落としてきて解凍 => オーナ/グループ変更
以下の例では、/optに配置しているが、どこでもお好みのパスでどうぞ。

[root@localhost ]# wget http://ftp.jaist.ac.jp/pub/apache/tomcat/tomcat-8/v8.5.6/bin/apache-tomcat-8.0.39.tar.gz
[root@localhost ]# tar xzvf apache-tomcat-8.0.39.tar.gz
[root@localhost ]# mv apache-tomcat-8.0.39 /opt/tomcat
[root@localhost ]# cd /opt/
[root@localhost ]# chown -R tomcat:tomcat tomcat

systemdへサービスの登録

yumでは自動的にやってくれるこの辺も手動で作る/登録する必要あり

[root@localhost ]# vim /etc/systemd/system/tomcat.service

[Unit]
Description=Apache Tomcat 8
After=network.target

[Service]
User=tomcat
Type=forking
EnvironmentFile=/etc/sysconfig/tomcat
KillMode=none
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target



[root@localhost ]# vim /etc/sysconfig/tomcat

Java_HOME="/usr/Java/jdk1.8.0_111/jre/"
Java_OPTS="-DJava.security.egd=file:/dev/./urandom"

[root@localhost ]# systemctl daemon-reload

firewalld用に新規サービスの登録(オプション)

検証目的などで、firewalldを使用しないならスキップしてOK

[root@localhost ]# vim /usr/lib/firewalld/services/tomcat.xml

<service>
  <short>WWW (HTTP-tomcat)</short>
  <description>HTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages.</description>
  <port protocol="tcp" port="8080"/>
</service>

[root@localhost ]# systemctl restart firewalld
[root@localhost ]# firewall-cmd --add-service=tomcat --zone=public --permanent
success
[root@localhost ]# systemctl restart firewalld

動作確認

まずはTomcatを起動させる。
また、OS起動時に自動的にサービスが立ち上がるようにもしておく。

[root@localhost ]# systemctl enable tomcat
[root@localhost ]# systemctl start tomcat
[root@localhost ]# systemctl status tomcat
[root@localhost ]# ss -nat | grep 8080
LISTEN     0      100                      :::8080                    :::*

Webブラウザでhttp://[ip_addr]:8080にアクセスして、おなじみのtomcatのトップページが表示されたらOK

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3