Tomcat에 Application 배포하기

2025. 1. 2. 14:33WAS/Tomcat


# 테스트 환경

  • OS : Oracle Linux Server release 8.6
  • JDK : 1.8
  • Tomcat ver. : 9.0.89

 

Tomcat에 애플리케이션을 배포하기 위해서 고려해야 할 사항이 2가지 있다.

 

1. war 파일명 또는 디렉토리 명

Tomcat에서는 기본적으로 [TOMCAT_ENGINE]/webapps/ROOT 디렉토리를 기본 애플리케이션 경로로 가지고 있다.

 

따라서 최초에 Tomcat 기동 후 기본 페이지를 호출할 경우 아래와 같이 따로 context 경로 입력 필요 없이 /로 설정이 되어 있다.

 

여기서 배포를 위해 가져온 .war 파일이나 디렉터리 명을 따로 설정하지 않고 ROOT로 설정할 경우 server.xml 변경점 없이 그대로 사용이 가능하다.

 

기존의 ROOT dir을 ROOT_old로 변경 후 배포하고자 하는 애플리케이션의 dir 명을 ROOT로 변경하고 재기동 및 호출 시 아래와 같은 결과를 얻을 수 있다.

 

 

만약 ROOT 말고 다른 이름으로 설정할 경우 2번을 통해 server.xml을 수정하자.

 

2. server.xml 수정

[TOMCAT_ENGINE]/conf/server.xml 파일을 vi 편집기로 열어 보게 되면

 

위와 같이 해당 Host 태그 안에 name, appBase, unpackWARs, autoDeploy 등과 같은 옵션들을 통해 default 설정이 되어 있는 것을 확인할 수 있다.

 

appBase가 webapps로 설정되어 있어 기본 설정 경로가 /webapps/ROOT 였던 것이다.

 

만약 다른 context path, ROOT가 아닌 다른 어플리케이션 명을 사용하고 싶다면 아래와 같이 설정 후 재기동 및 호출 테스트를 진행해보자

<Host name="localhost"  appBase="webapps"
              unpackWARs="true" autoDeploy="true">
              <Context path="/test" docBase="test"  reloadable="false" > </Context>

 

- context path : /test

- 애플리케이션 dir 명 : test

 

테스트 결과는 다음과 같다.

 

 

 

만약 다른 context path, ROOT가 아닌 다른 어플리케이션 명을 사용하고 어플리케이션 배포 경로도 커스텀 하고 싶다면 아래와 같이 설정 후 재기동 및 호출 테스트를 진행해 보자.

<Host name="localhost"  appBase="/sw/tomcat/apache-tomcat-9.0.89"
              unpackWARs="true" autoDeploy="true">
              <Context path="/test" docBase="test"  reloadable="false" > </Context>

 

- 애플리케이션 위치 : /sw/tomcat/apache-tomcat-9.0.89

- context path : /test

- 어플리케이션 dir 명 : test

 

테스트 결과는 다음과 같다.

 

 

appBase에 설정한 대로 /sw/tomcat/apache-tomcat-9.0.89 경로에 있는 test 폴더를 어플리케이션 경로로 잘 잡고 있는 것을 확인할 수 있다.

 


 

정리를 하자면 다음과 같다.

 

1. Application war 파일이나 DIR 명을 ROOT로 사용할 경우 

 

- /webapps 밑에 있는 ROOT 파일을 어플리케이션 war 파일이나 DIR로 변경

- server.xml 변경 X

 

2. Application war 파일이나 DIR 명을 수정 및 context path 수정할 경우

 

- /webapps 밑에 Application war 파일이나 DIR 위치시키기

- 해당 파일, DIR명을 server.xml에 태그를 추가하여 정보 입력

<Context path="/test" docBase="test"  reloadable="false" > </Context>

 

3. Application 배치 경로 수정할 경우

 

- 원하는 경로에 Application 위치시킨 후 server.xml에서 appBase 정보 변경 입력

<Host name="localhost"  appBase="/sw/tomcat/apache-tomcat-9.0.89"
              unpackWARs="true" autoDeploy="true">

'WAS > Tomcat' 카테고리의 다른 글

Tomcat DataSource 생성  (0) 2025.02.05
Tomcat 멀티 인스턴스 구성  (0) 2025.02.04
Jakarta EE 변경점  (0) 2025.01.06
Tomcat 버전 및 EOS 날짜  (0) 2025.01.06