낭만 프로그래머

CentOS 7에 Tomcat 9 설치 본문

Linux/CentOS

CentOS 7에 Tomcat 9 설치

조영래 2022. 4. 26. 13:01

1. JDK 설치
https://blog.miyam.net/190

2. 사용자 생성
Tomcat 서비스를 실행할 사용자를 생성

useradd -m -U -d /opt/tomcat -s /bin/false tomcat


3. Tomcat 다운로드 및 압축 해제

cd /tmp
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.62/bin/apache-tomcat-9.0.62.tar.gz
tar -xf apache-tomcat-9.0.62.tar.gz


4. Tomcat 폴더 이동 및 심볼링크 생성

mv apache-tomcat-9.0.62 /opt/tomcat/
ln -s /opt/tomcat/apache-tomcat-9.0.62 /opt/tomcat/latest


5. Tomcat 사용자 권한 부여

chown -R tomcat: /opt/tomcat
sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'


6. Tomcat 서비스 등록
아래 내용을 붙여 넣은 후 저장

vi /etc/systemd/system/tomcat.service
# /etc/systemd/system/tomcat.service

[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.14.1.1-1.el7_9.x86_64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh

[Install]
WantedBy=multi-user.target
systemctl daemon-reload


7. Tomcat 서비스 활성화 및 방화벽 해제

systemctl enable tomcat
systemctl start tomcat
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload


8. Tomcat에서 server.xml 파일을 수정
한글 문제로 인하여 UTF-8로 설정하기 위하여 URIEncoding="UTF-8" 추가
위치는 /opt/tomcat/apache-tomcat-9.0.62/conf/server.xml

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />