본문 바로가기

IT

Linux(centOS9) 설정 6(톰캣 설치 및 실행, 실습)

728x90

톰캣10 설치 메뉴얼

tomcat 사용자그룹 추가

  • sudo groupadd tomcat

톰캣 디렉토리 생성

  • sudo mkdir -p /opt/tomcat

tomcat 이라는 사용자를 생성, 로그인불가 옵션, 홈디렉토리 지정, tomcat 그룹에 포함

  • sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat

홈 디렉토리로 이동 후 톰캣10 최신버전 다운로드

 tar 설치 및 톰캣 설치

  • sudo yum install tar -y
  • sudo tar -xvf apache-tomcat-${VER}.tar.gz -C /opt/tomcat --strip-components=1

/opt/tomcat 를 포함한 모든 하위 파일들에 대해서 소유권 변경(root:root => tomcat:tomcat)

  • sudo chown -R tomcat: /opt/tomcat

/opt/tomcat 를 포함한 모든 하위 sh 파일들에 대해서 실행권한 부여

  • sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'

현재 설치된 자바정보 확인

  • sudo alternatives --list | grep ^java

java 정보 확인

systemctl 에 등록하기 위한 tomcat.service 문서 생성

  • sudo vim /etc/systemd/system/tomcat.service

tomcat.service 문서 생성

systemctl 에서 tomcat.service 문서를 읽고 톰캣 실행 및 활성화

  • sudo systemctl daemon-reload
  • sudo systemctl start tomcat
  • sudo systemctl enable tomcat
  • sudo systemctl status tomcat

정상적인 톰캣 실행

톰캣 구조도

톰캣 구조도

톰캣 구성요소 개요

  • 설명에 앞서
    • 기본호스트를 tomcat.ll1.oa.gg 으로 가정한다.
    • 톰캣에 현재 1개의 호스트가 추가된 상황이라고 가정한다.
      • site1.ll1.oa.gg
  • 톰캣 : 웹앱을 탑재할 수 있는 컨테이너, 여러개의 호스트를 추가할 수 있고, 설치직후에는 기본호스트만 존재한다.
  • 기본호스트 : 설치직후에는 기본적으로 5개의 앱을 가지고 있다.
  • 매니저앱 : 각 호스트마다 하나씩 존재, 자신이 속한 호스트에서 소속된 다른 앱들을 관리하는데 사용된다. 원격배포시에 사용된다.
  • 호스트매니저앱 : 톰캣당 1개씩 존재, 호스트룰 추가, 삭제할 수 있다.
  • docs앱 : 톰캣공식문서가 담겨있는 앱
  • examples앱 : 톰캣예제소스코드가 담겨있는 앱
  • 앱의 URL 구성 : 호스트/앱이름, 예를들어 기본호스트의 docs앱의 URL은 : https://tomcat.ll1.oa.gg/docs 이다.
  • 루트앱 : 호스트명만으로 구성된 URL로 접속했을 때 나오는 앱, 예를들어 site1.ll1.oa.gg 호스트의 루트앱 주소는 https://site1.ll1.oa.gg 이다.
  • 보통 톰캣에 새로운 사이트를 추가할 때, 호스트매니저로 호스트를 추가한 후, 해당 호스트안에 루트앱만 추가한다.
  • 예전에 도메인이 귀할 때는, 하나의 호스트에 여러개의 앱을 넣어서 사용했었지만, 현재는 그렇지 않다.
  • 호스트내에 이름이 같은 앱은 존재할 수 없다.
  • 다만 병렬배포라고 해서, 버전을 달리하면 똑같은 앱이 하나의 호스트내에 여러개 존재할 수 있다.
  • 이 상황에서는 사용자가 접근했을 때 톰캣이 버전이 높은 앱을 노출시킨다.

톰캣의 기본 호스트에 gugudan 앱 추가

  • su # 루트 비번 입력
  • mkdir /opt/tomcat/webapps/gugudan

gugudan 앱 폴더로 이동

  • cd /opt/tomcat/webapps/gugudan

index.jsp 생성

  • vim index.jsp

index.jsp

  • 실행 화면

gugudan