본문 바로가기
IT/Java

Tomcat 서버에 springboot war파일 배포

by 성준하이 2022. 4. 20.
반응형

Tomcat 폴더 안에 보면 다양한 폴더 들이 존재한다.

 

대표적으로

  • bin - 실행, 설치, 종료 등을 위한 폴더
  • conf - 설정 파일에 대한 폴더
  • log -  로그파일 폴더
  • lib - 라이브러리 폴더
  • temp - 임시파일 폴더
  • webapps - document 경로 폴더

등이 있다.

간단한 인터프린터 언어로 된 파일이나 스크립트 등은 webapps 폴더에 root폴더 안에 넣으면

http://ip:port/파일명

이런 식으로 브라우저에서 볼수가 있다.

Spring 프로젝트를 통해서 배포를 하려면 war파일이나 jar 파일 등으로 배포가 가능한데 포스팅에서는 war 파일을 배포하는 방법에 대해서 작성해볼것이다.

 

먼저 pom.xml파일에 추가하도록 한다. 톰캣 의존성 추가

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-tomcat</artifactId>
   <scope>provided</scope>
</dependency>

그리고 pom.xml에 war 방식으로 배포할것이라고 명시를 해준다.

<packaging>war</packaging>

다음은 SpringBootServletInitializer 인터페이스 를 구현하여 Tomcat에 필요한 Servlet 컨텍스트를 초기화한다 .

@SpringBootApplication
public class SpringBootTomcatApplication extends SpringBootServletInitializer{
}

 

이렇게 까지 설정을 하고 나서 maven build를 하면 target 안에 War파일이 생성이 된다.

해당 파일을 tomcat의 webapps 폴더 안에 넣고 tomcat을 재실행 하면 war 파일이 압축이 풀리면서 디렉토리가 생성이 된다.

만약 디렉토리 이름이 test.war 를 풀어서 test 라고 생겼으면 http://ip:port/test 가 폴더의 root경로가 된다.

 

만약 http://ip:port 로 바로 나오게 싶다면 설정 파일을 바꿔줘도 되지만 편하게는 war파일을 ROOT.war로 만들어서 압축이 해제가 되면 루트 경로로 사용을 할수가 있다.

반응형

댓글