ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 🌱NCP(3) STS로 WAR 파일 배포해서 톰캣 연동하기
    카테고리 없음 2023. 10. 30. 17:11

    0. STS에서 프로젝트 생성, WAR 파일 배포

     

     

     STS 에서 legacy project로 하나 추가해 준다.

    spring mvc project

    www.exex.org

    너무 대충 지었나싶다.

     

    properties에서 자바 11버전으로 변경해 주기

     

    만들어둔 프로젝트 우클릭 Export - WAR file (또는 war 검색)

     

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

     

    [Browse] - 경로를 톰캣 설치된 webapps로 설정 

    ❗ Destination 경로 칸에 프로젝트명끝에 .war 붙여주면 에러가 사라진다.

     

    home.jsp 화면 설정

    프로젝트의 views 폴더에서 home.jsp 확인 

    임의로 할 거니 적당히 적어두자.


    🧙순서 1.은 로컬에서 접속 방법이니 war 배포해서 실행하는 방법을 보려면 바로 2.로 넘어가자.

     

    1. 로컬에서 톰캣 실행하여 서버 접속

     

     

    톰캣 설치 위치 - bin 폴더 - startup.bat 더블클릭해서 실행하면 톰캣이 시작된다.

    창을 닫고 url에 주소 입력

    >> http://localhost:8080

     home.jsp 화면이 열린다.

     

     

    뒤에 org 붙는 게 싫다면?

    톰캣 설치 폴더에서 conf 폴더 - server.xml 파일 열기 

    해당 코드를 164번 라인쯤에 추가 

    docBase는 war 파일명에 맞춰서 써야 한다.

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

    고로, 이렇게 해야한다.

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

     

    서버설정을 바꿨으니 shutdown으로 다시 톰캣을 지워주자


     

    다시 startup.bat 실행 후 주소창에 localhost:8080 입력하면 아까 그 home.jsp파일이 열린다. 

     

     

     

     

     


    2. 우분투 - war 파일 배포해서 톰캣 실행하기

     

    (1) Git Bash 로그인

     

    git bash 실행 후 로그인 

    >> ssh -l root -p 포트번호 서버접속용공인ip

     

    💡패스워드 변경 방법

    >> passwd root
    입력 후 New password: 가 뜨면 바꿀 비밀번호를 입력한다.

    패스워드 변경


    (2) 설치 디렉토리 준비 

     

    home 디렉토리에서 시작해 보자.

    >> cd /home

     

    home에서 apache-test 폴더 생성하기

    >> mkdir apache-test

     

    apache-test 폴더로 이동해 두기

    >> cd apache-test/

     

     


    (3)  톰캣 설치

     

    톰캣 사이트 들어가기

    https://tomcat.apache.org/

     

    Apache Tomcat® - Welcome!

    The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations and Jakarta Authentication specifications. These specifications are part of the

    tomcat.apache.org

    Download 에서 9버전 선택

     

    tar.gz 찾아서 우클릭 후 [링크 주소 복사]

     

    브라우저 url 창에 해당 링크 주소를 붙여넣으면 다운로드가 되는지 확인한다.


     

    tar.gz 링크주소복사한 것을 여기에서 쓸 것이다.

    명령어에 wget 뒤 복사한 링크를 입력

    >> wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.82/bin/apache-tomcat-9.0.82.tar.gz

     

    이후 압축풀기

    >> tar -xvf apache-tomcat-9.0.82.tar.gz

    완료

     

    *상위로 이동
    >> cd ..

     

     

    내부 목록을 보기 위해 ls, 이후 webapps 폴더까지 이동 

    >> ls

    >> cd apache-tomcat-9.0.82/

    >> cd webapps/


    (4) 파일질라 실행

     

    [파일] - [사이트 관리자] - 사이트 선택해서 연결 

    리모트 사이트에 

    >> /home

    home 폴더 열어보기.

     

    왼쪽 목록에서 아까 sts에서 생성한 war파일을 해당 서버의 webapps 폴더에 드래그해서 전송한다.

     

     


     

    (5) server.xml 파일 설정

    깃배쉬로 돌아오기

     

    server.xml 파일 열어서 Context 태그 추가하기 

     

    >> vim servser.xml

     

    Edit 모드로 들어가기

    >> E 

    vim server.xml

    아까처럼 <Host> 태그 아래에 Context 태그 추가 

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

     

    esc 누른 상태에서 콜론(:) 입력해서 밑으로 나가기

    wq 입력 or wq! 입력해서 저장하고 나가기 

    참고

     

    나오면 다시 아래 창으로 보이는데 vim server.xml 입력해서 저장이 잘 됐는지 확인한다.

     


     

     톰캣 켜서 ip 주소와 포트 번호로 접속

     

    상위로 올라가 bin 폴더로 돌아가기

    >> cd ..

    >> cd bin/

     

    목록 확인

    >> ls

    startup.sh와 shutdown.sh 가 보인다. 나중에 이 두 기능으로 서버 켜고 끌 것임.

     

    해당 ip와 포트로 접속해 보기

    포트포워딩용 말고 공인 ip로 시도해야 하며, 그전에 ACG 정보를 설정해야 한다.

     

     

    ACG 규칙 설정

    NCP 접속해서 ACG 클릭

     

    [+ACG 생성] 클릭 

     

    접근 소스 >> 0.0.0.0/0 

    허용 포트 >> 8080 (톰캣 포트번호) 

    [+ 추가] - [적용]

    * 딜레이 있음 

     

    server로 돌아가 공인 IP 주소 확인

    27.96.135.64

     

    ACG 규칙을 설정하지 않고 톰캣을 startup.sh 로 실행하면

    " ip주소:포트번호 "로 처음 접속 시, 톰캣화면으로만 뜬다.

     

     

    만약 톰캣이 이전에 실행 중이라서 위와 같이 고양이 화면이 뜬다면,

    깃배쉬에서 shutdown 시키고 다시 startup으로 실행 후 해당 주소로 들어가면 home.jsp 화면이 잘 뜬다.

     

    >> ./shutdown.sh

    >> netstat -tnlp

    >> ./startup.sh

    >> netstat -tnlp

     

    ip주소:포트번호 입력 

    >> 27.96.135.64:8080

     

     

     

Designed by Tistory.