devops

Linux Ec2에 tomcat 설치

yougeun 2024. 3. 22. 18:35
728x90

1. amazon-linux-extras 설치

sudo amazon-linux-extras install epel -y

 

추가적인 dependency를 한꺼번에 다운로드 받기위해 amazon-linux-extras 확장패키지를 설치해줍니다.

 

2.tomcat 설치 및 실행

# opt 디렉토리로 이동
cd /opt

#tomcat tar.gz 다운
sudo wget https://mirror.navercorp.com/apache/tomcat/tomcat-9/v9.0.87/bin/apache-tomcat-9.0.87.tar.gz

# tomcat 압축 해제
sudo tar -xvzf apache-tomcat-9.0.87.tar.gz

# 압축해제 된 tomcat 파일로 이동 
cd apache-tomcat-9.0.87


#tomcat startup.sh shutdown.sh 실행권한 추가
sudo chmod +x ./bin/startup.sh
sudo chmod +x ./bin/shutdown.sh

# tomcat 실행
sudo ./bin/startup.sh

 

3.tomcat 권한 추가

3-1.manager context.xml파일 변경

# /webapps/manager/META-INF/context.xml 변경
sudo vi ./webapps/manager/META-INF/context.xml
#/webapps/manager/META-INF/context.xml 변경내용
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true" >
  <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                   sameSiteCookies="strict" />
  <!--Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /-->  <!-- 주석으로변경 -->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

 

3-2.host-manager context.xml파일 변경

# /webapps/host-manager/META-INF/context.xml 변경
sudo vi ./webapps/manager/META-INF/context.xml
#/webapps/host-manager/META-INF/context.xml 변경내용
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true" >
  <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                   sameSiteCookies="strict" />
  <!--Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /-->  <!-- 주석으로변경 -->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

3-3.tomcat-users.xml파일 변경

# ./conf/tomcat-users.xml 변경
sudo vi ./conf/tomcat-users.xml
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
  <user username="deployer" password="deployer" roles="manager-script"/>
  <user username="tomcat" password="tomcat" roles="manager-gui"/>

</tomcat-users>

4.tomcat manager 확인

ㅇ[Ec2-PublicIp]:8080(tomcat 기본 Port:8080)
manager App

 

[Ec2-PublicIP]:8080으로 접속하면 첫번째 이미지의 웹페이지로 접속하게 된다. 웹페이지에서 manager App으로 접속 후 3-3에서 설정한 ID:tomcat PW:tomcat으로 접속하면 manager App으로 접속하게되는 것을 볼 수 있다.

 

728x90