本稿では Java のアプリケーション・サーバー Apache Tomcat 8 を CentOS 7 にインストールする手順について解説します。
事前準備
Apache Tomcat をインストールする前に、まずは Apache Tomcat の動作の前提となる環境を作ります。 Apache Tomcat は Java で作られているため Java が必要です。 つぎの記事などを参考に Java をインストールしてください。
CentOS 7 に Oracle の JDK 8 をインストールする手順
本稿では CentOS 7 に Oracle の Java SE Development Kit 8 (JDK 8) をインストールする手順について解説します。
また、Tomcat を動かすための専用ユーザとして tomcat を追加します。
# useradd -s /sbin/nologin tomcat
Apache Tomcat 8 のダウンロードと配置
それでは Apache Tomcat 8 のインストール作業に移ります。 まずは Apache Tomcat 8 のダウンロードページから、tar.gz 形式の Apache Tomcat 8 本体をダウンロードします。 ここでは、つぎのように curl コマンドでダウンロードします。 2015年12月現在はバージョン 8.0.30 が最新ですが、本手順の際には、ダウンロードページから最新のバージョンのURLをそれぞれ確認してください。
# cd ~
# curl -O http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-8/v8.0.30/bin/apache-tomcat-8.0.30.tar.gz
次はダウンロードした tar.gz ファイルを解凍して配置します。 つぎのように tar コマンドで解凍して、今回は /opt に配置します。 また、解凍した Apache Tomcat の所有者を、先ほど作成した tomcat ユーザの所有とします。
# tar -xzvf ~/apache-tomcat-8.0.30.tar.gz
# mv ~/apache-tomcat-8.0.30 /opt
# chown -R tomcat:tomcat /opt/apache-tomcat-8.0.30
サービスの作成と登録
CentOS 7 からはサービスを systemd が管理するようになりました。 ここでは Apache Tomcat 8 をサービスとして登録します。 まずは /etc/systemd/system/tomcat.service を新たに作成して、つぎのように記述して保存します。 これはサービスの定義ファイルです。
[Unit]
Description=Apache Tomcat 8
After=network.target
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/opt/apache-tomcat-8.0.30/tomcat.pid
RemainAfterExit=yes
ExecStart=/opt/apache-tomcat-8.0.30/bin/startup.sh
ExecStop=/opt/apache-tomcat-8.0.30/bin/shutdown.sh
ExecReStart=/opt/apache-tomcat-8.0.30/bin/shutdown.sh;/opt/apache-tomcat-8.0.30/bin/startup.sh
[Install]
WantedBy=multi-user.target
作成した定義ファイルの権限を 755 に変更します。
# chmod 755 /etc/systemd/system/tomcat.service
定義ファイルの作成が完了したら、つぎのように systemctl enable コマンドでサービスを有効にします。
# systemctl enable tomcat
ln -s '/etc/systemd/system/tomcat.service' '/etc/systemd/system/multi-user.target.wants/tomcat.service'
これでサービス登録が完了です。
Apache Tomcat 8 の起動と停止
Apache Tomcat 8 を起動してみましょう。 systemctl start tomcat コマンドで起動できます。
# systemctl start tomcat
なお Apache Tomcat 8 を停止する場合は systemctl stop tomcat コマンドです。
# systemctl stop tomcat
おわりに
本稿では Apache Tomcat 8 をインストールする手順について解説しました。 CentOS では 7 から導入された systemd について知識が必要ですが、Apache Tomcat 以外のソフトウェアでも前提となる知識ですので、ぜひ学習されることをオススメします。
次はインストール後に行いたいセキュリティ設定について解説しますので、是非御覧ください。