4
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CentOS7でtomcat8構築

Last updated at Posted at 2019-05-18

即席でTomcat8構築、ManagerでログインできるようにしてApacheと連携する手順です。

Javaインストール・設定

JDKインストール

yum -y install java-1.8.0-openjdk-devel

確認

java -version

パスを通す

echo "export JAVA_HOME=$(readlink -e $(which java)|sed 's:/bin/java::')" >  /etc/profile.d/java.sh
echo "PATH=¥$PATH:¥$JAVA_HOME/bin"                                       >> /etc/profile.d/java.sh
source /etc/profile.d/java.sh

tomcatインストール・設定

tomcat取得&配置

# tomcatユーザー作成
useradd -s /sbin/nologin tomcat

# tomcatダウンロード
mkdir -p /usr/local/src/tomcat
cd /usr/local/src/tomcat
curl -OL http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43.tar.gz
※http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-8/をブラウザで検索し、
その時存在するバージョンをダウンロードしないと解凍する時に失敗します。

# tar.gz展開&配置
tar zxvf apache-tomcat-8.5.43.tar.gz
mv apache-tomcat-8.5.43 /opt/
chown -R tomcat. /opt/apache-tomcat-8.5.43
ls -ld /opt/apache-tomcat-8.5.43

# シンボリックリンク
ln -s /opt/apache-tomcat-8.5.43 /opt/tomcat

# パスを通す
echo 'export CATALINA_HOME=/opt/tomcat'  >  /etc/profile.d/tomcat.sh
source /etc/profile.d/tomcat.sh

初期設定 & 起動

# サービス定義ファイルを作成
vi /etc/systemd/system/tomcat.service
※以下記載
---
[Unit]
Description=Apache Tomcat 8
After=syslog.target network.target
 
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/opt/tomcat/tomcat.pid
RemainAfterExit=yes
 
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
ExecReStart=/opt/tomcat/bin/shutdown.sh;/opt/tomcat/bin/startup.sh
 
[Install]
WantedBy=multi-user.target
---

# 権限付与
chmod 755 /etc/systemd/system/tomcat.service

# 起動
systemctl start tomcat

ブラウザで「http://サーバのIP:8080」アクセス
キャプチャ.PNG
お馴染みのやつが表示されます。

Managerログイン

vi /opt/tomcat/conf/tomcat-users.xml
※以下追記。

<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>

↑だけだとtomcat8でManagerの画面に接続できないことがある。アクセス許可をする。
vi /opt/tomcat/webapps/manager/META-INF/context.xml
※以下allowの行にパイプでつないで許可したいIPを記載する。

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
</Context>

初期画面「Manager App」よりBasic認証でusername,password入れて。
キャプチャ2.PNG
ログインできました。

Apache → Tomcat連携設定

※以下Apache側のサーバで作業

# モジュール確認
cat /etc/httpd/conf.modules.d/00-proxy.conf
※以下2行があること
---
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
---

# ajp通信設定
vi /etc/httpd/conf.d/proxy-ajp.conf
※全てのリクエストを Tomcat で処理したい場合
---
ProxyPass / ajp://tomcatサーバのIP:8009/
---
※ sample ディレクトリへのアクセスを Tomcat上のdocsと連携したい場合
---
ProxyPass /docs/ ajp://tomcatサーバのIP:8009/docs/
---
 
# apache再起動
systemctl restart httpd

※以下Tomcat側のサーバで作業

vi /opt/apache-tomcat-8.5.43/conf/server.xml
※以下コメントアウト
---
<!--
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    -->
---
4
9
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
4
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?