리눅스 Snippet - Tomcat 수동 설치 및 systemd 등록(리눅스 or Mac)

1. Tomcat 수동 설치 (리눅스 or Mac)

  1. Java jdk 설치
$ wget --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" 오라클JDK다운로드경로
  1. Tomcat User 생성
$ sudo groupadd tomcat
$ sudo useradd -M -s /bin/nologin -g tomcat -d /usr/local/tomcat tomcat
  1. Tomcat 다운로드 및 압축해제
  • 9.0 버전 임 다운로드 경로는 원하는 경로로 대체
$ wget http://apache.tt.co.kr/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz
$ tar -zxvf apache-tomcat-9.0.8.tar.gz
$ mv apache-tomcat-9.0.8 /usr/local/tomcat
  1. 권한 조정
$ chgrp -R tomcat /usr/local/tomcat
$ cd /usr/local/tomcat
$ sudo chmod -R g+r conf
$ sudo chmod g+x conf
$ sudo chown -R tomcat webapps/ work/ temp/ logs/
  1. systemd 설정파일 등록
$ sudo vi /etc/systemd/system/tomcat.service
# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target

[Service]
Type=forking

Environment="JAVA_HOME=/usr/java/jdk-10.0.1/"
Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid"
Environment="CATALINA_HOME=/usr/local/tomcat"
Environment="CATALINA_BASE=/usr/local/tomcat"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target
  1. systemd 재시작 및 start
$ sudo systemctl daemon-reload
$ sudo systemctl enable tomcat
$ sudo systemctl start tomcat