ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Apache Tomcat War 배포 (Window)
    Apache Tomcat 2022. 1. 17. 10:41

    Apache Tomcat 10.0.14 버전을 사용 하였습니다.

     

    Apache Tomcat® - Apache Tomcat 10 Software Downloads

    Welcome to the Apache Tomcat® 10.x software download page. This page provides download links for obtaining the latest version of Tomcat 10.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versi

    tomcat.apache.org

    다운로드 창에서 우리한테 필요한 windows zip 파일을 다운 받은후 원하는 곳에 옮겨 줍니다.

    (저는 D 에다가 옮겨놨습니다.)

    Tomcat의 편집을 위해 VSCode를 사용합니다.

    window 사용을 위해서는 window service에 등록을 해야합니다.

    먼저 tomcat을 압축해제 합니다. -> 저는 ui, api 두군대로 나누어 실행 하기 위해 따로 만들어 둡니다.

    두곳의 설정방법이 비슷하기 때문에 ui를 위주로 보여드릴 예정

    ui → bin → service.bat 을 VSCode로 열어 줍니다.
    아래 그림처럼 set DEFAULT_SERVICE_NAME 을 지정 해 줍니다. (원하는 이름으로 정하되 중복되지 않게 해야합니다.) 



    저장후 폴더 내에 있는 tomcat10.exe, tomcat10w.exe -> Tomcat10_ui.exe, Tomcat10_uiw.exe 로 이름 변경을 해줍니다.

    cmd 에서 service.bat install을 실행시켜 줍니다.

    파일 경로창에 cmd 를 칠경우 현재 폴더로 cmd가 열립니다.

    • 이름을 변경하지 않을 경우
    • 이름을 변경 할 경우
      서비스 등록이 된걸 확인할 수 있습니다.

    conf → server.xml 을 VSCode 로 열어줍니다.

    application.properties port 입니다.

    war 로 만드는 spring의 설정 (application.yml)과 맞춰줘야 합니다. (개인 환경에 맞춰 만들어 줘야 합니다)

    <Connector port="8080"   <Connectorport="8090" 으로 변경

    그리고 ui, api를 각 다른 서비스에 돌릴 예정이므로 -> SHUTDOWN port 또한 겹치면 안됩니다.
    (사용하지 않는 port -> 저같은경우 8091 이런식으로 뒤에 1을 붙여 SHUTDOWN port를 지정합니다)

    서비스를 먼저 시작을 해보면 아래와 같은 그림이 뜹니다.

    이 화면이 뜨게 되면 8090port 에서 정상 실행된다는 뜻입니다.

    webapps-javaee 폴더 생성후 → 우리가 만든 war 파일을 집어 넣습니다. 그후 서비스를 재시작 하면됩니다.

    (Tomcat9.0 이하 버전은 webapps → ROOT 폴더 지운후 war 집어넣고 그후 서비스 재시작)
    위와 동일한 방법으로 Tomcat10_api를 생성후 war 넣고 실행 해보겠습니다.

    Tomcat 10.x 이상
    Tomcat 9,x 이하
    각 서비스들을 시작 해주면 됩니다.

    Tomcat 9.x 이하 버전에는server: servlet: context-path: 부분과
    webapps에 들어가는 부분이 맞춰줘야 하지만
    Tomcat 10.x 버전 부터는 ROOT로 적어도 되는듯 합니다.

    조금더 정확히 말하면 ROOT 로 적게되면 context-path 부분을 무시하고 root 에서 실행이 됩니다.
    즉, 경로가 localhost:8090/ui/forTest -> localhost:/8090/forTest 로 변경이 됩니다. 우리가 보여주는 ui 단은
    ROOT로 실행이 되어도 된다 치지만 api(context-path:api, ui api를 가져올때 localhost:8080/api/....)로 가져올경우
    Tomcat에서 api 경로를 ROOT로 바꾸기 때문에 api 를 못가져오는 상황이 발생 합니다.

    => context-path 랑 맞춰 이름을 배포하는게 가장 좋습니다.

    'Apache Tomcat' 카테고리의 다른 글

    Tomcat SSL 적용 (Windows)  (0) 2022.01.26

    댓글

Designed by Tistory.