war 배포 방법 6단계 – Tomcat

Spring boot war 배포 방법에 대해 알아보도록 하겠습니다. war 파일을 Tomcat에 배포하는 방법은 다음과 같습니다.

WAR 배포 방법

  1. 먼저, Tomcat 서버를 설치하고 실행해야 합니다. Tomcat의 공식 웹사이트에서 Tomcat 배포 파일을 다운로드하고 설치하세요.
  2. War 파일을 생성합니다. 일반적으로 웹 응용 프로그램을 개발할 때 Maven, Gradle 또는 Ant와 같은 빌드 도구를 사용하여 War 파일을 생성합니다. 프로젝트를 빌드하고 War 파일을 생성하세요.
  3. Tomcat 서버의 “webapps” 디렉토리로 War 파일을 복사합니다. 이 디렉토리는 Tomcat 서버가 웹 애플리케이션을 로드하는 곳입니다. 일반적으로 Tomcat을 설치한 디렉토리에서 “webapps” 디렉토리를 찾을 수 있습니다.
  4. War 파일을 “webapps” 디렉토리로 복사한 후, Tomcat 서버를 시작하거나 재시작합니다. Tomcat 서버가 시작되면서 War 파일이 자동으로 로드되고 애플리케이션이 배포됩니다.
    1. 가장 간단한 방법 : webapps 루트 폴더를 지우고 배포한 WAR 파일의 파일명을 ROOT.war로 변경server.xml 수정 방법 : Tomcat 설치한 경로 conf 하위에 있는 server.xml 의 <Context> 관련 태그를 추가합니다. 아래 docBase 부분에 WAR 파일의 이름만 적으면 됩니다.

    <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="sample-backoffice-1.2.3" reloadable="false" /> </Host>
  5. 배포된 웹 애플리케이션에 접근하려면 웹 브라우저에서 다음과 같이 URL을 입력하세요: “http://localhost:8080/sample-backoffice-1.2.3” (여기서 “웹앱이름”은 War 파일의 이름 또는 context path입니다).
  6. 웹 애플리케이션에 대한 추가적인 구성이 필요한 경우, Tomcat의 설정 파일 (예: server.xml, context.xml)을 수정하여 필요한 변경사항을 반영할 수 있습니다.

이것은 War 파일을 Tomcat에 배포하는 가장 기본적인 방법입니다. 물론, 환경에 따라 추가 구성이 필요할 수 있습니다.

WAR 상세 배포 방법

War 파일을 Tomcat에 배포하는 과정을 자세히 설명해드리겠습니다.

  1. Tomcat 설치 및 실행:
    • Tomcat의 공식 웹사이트에서 Tomcat 배포 파일을 다운로드하고 압축을 해제하세요.
    • 압축을 해제한 디렉토리를 Tomcat의 설치 디렉토리로 사용할 수 있습니다.
    • 터미널 또는 명령 프롬프트에서 Tomcat의 “bin” 디렉토리로 이동하여 실행 스크립트를 실행하여 Tomcat 서버를 시작하세요.
    • Windows에서는 “startup.bat” 파일을 실행하고, Unix 또는 Linux에서는 “./startup.sh” 스크립트를 실행합니다.
    • Tomcat이 성공적으로 시작되면 웹 브라우저에서 “[http://localhost:8080“을](http://localhost:8080%22%EC%9D%84/) 입력하여 Tomcat 기본 환영 페이지에 접속할 수 있습니다.
  2. War 파일 생성:
    • 웹 애플리케이션을 개발하는 도구 또는 빌드 도구를 사용하여 War 파일을 생성하세요.
    • Maven을 사용하는 경우, Maven 프로젝트에서 명령어 “mvn clean package”를 실행하면 War 파일이 생성됩니다.
    • Gradle을 사용하는 경우, Gradle 프로젝트에서 “gradle war” 명령어를 실행하여 War 파일을 생성합니다.
    • 빌드 도구를 사용하지 않고 수동으로 War 파일을 생성할 경우, 프로젝트의 소스 코드와 웹 자원을 포함하는 디렉토리 구조를 만든 후에 디렉토리 전체를 War 파일로 압축하세요.
  3. War 파일 배포:
    • War 파일을 Tomcat 서버의 “webapps” 디렉토리로 복사합니다.
    • Tomcat 설치 디렉토리에서 “webapps” 디렉토리를 찾을 수 있습니다.
    • War 파일을 “webapps” 디렉토리로 복사하면 Tomcat은 자동으로 War 파일을 인식하고 배포합니다.
    • War 파일을 “webapps” 디렉토리에 복사한 후에는 Tomcat 서버를 시작하거나 재시작해야 합니다.
  4. Tomcat 서버 시작 및 애플리케이션 배포:
    • Tomcat 서버를 시작하려면 “bin” 디렉토리에서 해당 운영체제에 맞는 실행 스크립트를 실행하세요.
    • Windows에서는 “startup.bat” 파일을 실행하고, Unix 또는 Linux에서는 “./startup.sh” 스크립트를 실행합니다.
    • Tomcat 서버가 시작되면 War 파일이 자동으로 로드되고 애플리케이션이 배포됩니다.
    • Tomcat 로그를 확인하여 배포 프로세스가 성공적으로 완료되었는지 확인할 수 있습니다. 로그 파일은 “logs” 디렉토리에서 찾을 수 있습니다.
  5. 웹 애플리케이션 접근:
    • 배포된 웹 애플리케이션에 접근하려면 웹 브라우저에서 다음과 같이 URL을 입력하세요: “http://localhost:8080/웹앱이름“.
    • 여기서 “웹앱이름”은 War 파일의 이름 또는 context path입니다.
    • 예를 들어, War 파일의 이름이 “myapp.war”이고 “webapps” 디렉토리에 복사되었다면, URL은 “http://localhost:8080/myapp“이 됩니다.
  6. 추가 구성:
    • 배포된 웹 애플리케이션에 대한 추가적인 구성이 필요한 경우, Tomcat의 설정 파일을 수정하세요.
    • 주요 설정 파일은 “conf” 디렉토리에 있습니다. 예를 들어, “server.xml” 파일은 Tomcat 서버의 전반적인 구성을 담당하며, “context.xml” 파일은 각 웹 애플리케이션의 개별 구성을 담당합니다.
    • 이러한 설정 파일을 수정하여 웹 애플리케이션의 데이터베이스 연결, 보안 설정, 로깅 등을 구성할 수 있습니다.
  7. War 파일의 컨텍스트 패스 변경:
    • 기본적으로 Tomcat은 War 파일의 파일 이름을 컨텍스트 패스로 사용합니다. 예를 들어, “myapp.war” 파일은 “http://localhost:8080/myapp“로 접근됩니다.
    • War 파일을 배포한 후에 컨텍스트 패스를 원하는대로 변경하려면 “webapps” 디렉토리에 배포된 애플리케이션의 디렉토리 이름을 변경하세요. 예를 들어, “myapp” 디렉토리를 “mywebapp”으로 변경하면 컨텍스트 패스는 “http://localhost:8080/mywebapp“이 됩니다.
    • 또는 “META-INF” 디렉토리에 “context.xml” 파일을 생성하여 컨텍스트 패스를 명시적으로 설정할 수도 있습니다. 이를 통해 War 파일의 파일 이름과 컨텍스트 패스를 분리할 수 있습니다.
  8. Tomcat 설정 파일 수정:
    • 웹 애플리케이션의 추가 구성을 위해 Tomcat의 설정 파일을 수정할 수 있습니다.
    • “conf” 디렉토리에 있는 “server.xml” 파일은 Tomcat 서버의 전반적인 구성을 담당합니다.
    • “context.xml” 파일은 개별 웹 애플리케이션의 구성을 담당하며, 각 웹 애플리케이션의 “META-INF” 디렉토리에 위치할 수 있습니다.
    • 이러한 설정 파일을 수정하여 데이터베이스 연결 정보, 보안 설정, 리소스 관리, 가상 호스팅 등을 구성할 수 있습니다.
  9. Tomcat 재시작:
    • War 파일을 배포한 후에는 Tomcat 서버를 재시작하는 것이 좋습니다. 이를 통해 배포된 웹 애플리케이션이 제대로 로드되고 실행됩니다.
    • Tomcat 서버를 중지하려면 “bin” 디렉토리에서 해당 운영체제에 맞는 실행 스크립트를 실행하세요. (예: “shutdown.bat” 또는 “./shutdown.sh”)
    • Tomcat 서버가 완전히 중지된 후에 다시 시작해주세요.
  10. 컨텍스트 파일 생성:
    • Tomcat의 “conf” 디렉토리 내에 있는 “Catalina” 디렉토리에 웹 애플리케이션의 컨텍스트 파일을 생성할 수 있습니다.
    • 컨텍스트 파일은 웹 애플리케이션의 고유한 설정을 포함하며, 해당 웹 애플리케이션에 대한 개별적인 환경을 구성할 수 있습니다.
    • “Catalina” 디렉토리 내에 웹 애플리케이션의 컨텍스트 파일을 생성합니다. 파일 이름은 일반적으로 웹 애플리케이션의 컨텍스트 패스와 일치하는 이름을 가지며, “.xml” 확장자를 사용합니다.
    • 컨텍스트 파일에는 웹 애플리케이션의 리소스, 데이터베이스 연결, 보안 설정 등을 구성할 수 있습니다.
  11. 추가 리소스 및 구성 파일:
    • 웹 애플리케이션에 추가적인 리소스나 구성 파일이 필요한 경우, 해당 파일을 웹 애플리케이션의 디렉토리 구조에 추가합니다.
    • 예를 들어, 웹 애플리케이션에서 사용할 프로퍼티 파일이 있다면, War 파일 내에 해당 파일을 포함시켜야 합니다.
    • 프로퍼티 파일을 추가한 후에는 웹 애플리케이션에서 해당 파일을 로드하여 필요한 설정을 읽을 수 있습니다.
  12. 자동 배포 설정:
    • Tomcat은 기본적으로 “webapps” 디렉토리 내의 모든 War 파일을 자동으로 배포합니다.
    • 하지만 웹 애플리케이션을 수동으로 배포하고 싶거나, 배포하지 않을 웹 애플리케이션이 있다면, Tomcat의 “conf” 디렉토리의 “server.xml” 파일에서 해당 웹 애플리케이션의 <Context> 요소에 **deployOnStartup="false"**를 설정합니다.
    • 이렇게 설정하면 Tomcat이 해당 웹 애플리케이션을 자동으로 배포하지 않고, 수동으로 배포해야 합니다.
  13. 컨텍스트 설정:
    • 웹 애플리케이션의 특정 컨텍스트 설정을 변경하고자 할 때는 Tomcat의 “conf” 디렉토리 내의 “Catalina” 디렉토리에 웹 애플리케이션의 컨텍스트 파일을 생성하고 수정합니다.
    • 해당 컨텍스트 파일에는 웹 애플리케이션에 대한 추가적인 설정을 포함할 수 있습니다.
    • 예를 들어, 특정한 URL 패턴으로 접근 제한을 설정하거나, 인증 및 권한 부여 설정을 구성할 수 있습니다.
  14. War 파일의 배포 및 업데이트:
    • War 파일을 배포한 후에 웹 애플리케이션의 업데이트를 수행하려면 다음과 같은 절차를 따릅니다:
      • Tomcat 서버를 중지합니다.
      • “webapps” 디렉토리에서 해당 웹 애플리케이션의 디렉토리를 삭제합니다.
      • 업데이트된 War 파일을 “webapps” 디렉토리에 복사합니다.
      • Tomcat 서버를 다시 시작합니다.
  15. War 파일의 제거:
    • 배포된 웹 애플리케이션을 제거하고자 할 때는 다음과 같은 절차를 따릅니다:
      • Tomcat 서버를 중지합니다.
      • “webapps” 디렉토리에서 해당 웹 애플리케이션의 디렉토리를 삭제합니다.
      • Tomcat 서버를 다시 시작합니다.
  16. 배포 디렉토리의 변경:
    • 기본적으로 Tomcat은 War 파일을 “webapps” 디렉토리에 배포합니다. 하지만 배포 디렉토리를 변경하고자 할 때는 다음과 같은 절차를 따릅니다:
      • Tomcat 서버를 중지합니다.
      • “conf” 디렉토리 내의 “server.xml” 파일을 엽니다.
      • <Host> 요소 내에서 <Context> 요소를 추가하고, “docBase” 속성에 배포 디렉토리의 경로를 설정합니다.
      • Tomcat 서버를 다시 시작합니다.

위의 설명을 따라하면 War 파일을 Tomcat에 배포할 수 있습니다. 이상으로 WAR 배포 방법에 대해 알아보았습니다.

자동배포 방법이 궁금하신 분은 아래 링크를 참고 바랍니다.

https://confluence.curvc.com/pages/releaseview.action?pageId=101548224

Back to top