Skip to content

Instantly share code, notes, and snippets.

@fukasawah
Last active December 20, 2018 08:37
Show Gist options
  • Save fukasawah/2c6b544ae09328479e99012424300807 to your computer and use it in GitHub Desktop.
Save fukasawah/2c6b544ae09328479e99012424300807 to your computer and use it in GitHub Desktop.
CentOS7にJRE11+Tomcat9を導入するスクリプト
#!/bin/bash
set -ue
# 必要に応じて
# yum update -y
# Tomcatユーザの作成
useradd -s /sbin/nologin --no-create-home tomcat
# JDK11を導入
yum install java-11-openjdk-headless
# Tomcatのダウンロードと展開
curl -LO http://ftp.riken.jp/net/apache/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
tar xf apache-tomcat-9.0.14.tar.gz
rm -f apache-tomcat-9.0.14.tar.gz
mv --no-target-directory apache-tomcat-9.0.14 /opt/tomcat
# CATALINA_BASEとなる場所に必要なものを作る(適当)
mkdir -p /var/lib/tomcat/run
mkdir -p /var/lib/tomcat/webapps
\cp -rpf /opt/tomcat/{conf,lib,logs,temp} /var/lib/tomcat
chown -R tomcat.tomcat /opt/tomcat /var/lib/tomcat
# Systemd用のファイルを作成
cat << '__EOF__' | sudo tee /etc/systemd/system/tomcat.service
# ref: https://gist.github.com/drmalex07/e6e99dad070a78d5dab24ff3ae032ed1
[Unit]
Description=Tomcat
After=syslog.target network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
WorkingDirectory=/var/lib/tomcat
Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_PID=/var/lib/tomcat/run/tomcat.pid"
Environment="CATALINA_BASE=/var/lib/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M"
PIDFile=/var/lib/tomcat/run/tomcat.pid
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
__EOF__
# サービス登録
systemctl daemon-reload
systemctl start tomcat
systemctl enable tomcat
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment