[DevOps] Tomcat Web Application Server 설치

10000JI·2024년 4월 3일

DevOps

목록 보기
4/14

🎆 Tomcat Install

젠킨스 실습 환경을 구축하기 위해서 Tomcat Server를 설치해주어야 한다.

톰캣 다운로드

위 경로로 들어가 9.x 버전의 톰캣을 설치해주었다.

Windows 압축파일을 다운받았다. 그리고 압축을 풀고 cmd를 켜준다.

C:\Users\kimmi>cd C:\TomcatWork2

C:\TomcatWork2>dir
 C 드라이브의 볼륨: OS
 볼륨 일련 번호: D8B3-A83E

 C:\TomcatWork2 디렉터리

2024-04-03  오후 11:23    <DIR>          .
2024-04-03  오후 11:23    <DIR>          ..
2024-03-11  오전 10:12    <DIR>          apache-tomcat-9.0.87
               0개 파일                   0 바이트
               3개 디렉터리  152,292,950,016 바이트 남음

C:\TomcatWork2>cd apache-tomcat-9.0.87

C:\TomcatWork2\apache-tomcat-9.0.87>dir
 C 드라이브의 볼륨: OS
 볼륨 일련 번호: D8B3-A83E

 C:\TomcatWork2\apache-tomcat-9.0.87 디렉터리

2024-03-11  오전 10:12    <DIR>          .
2024-03-11  오전 10:12    <DIR>          ..
2024-03-11  오전 10:12    <DIR>          bin
2024-03-11  오전 10:12            21,516 BUILDING.txt
2024-03-11  오전 10:12    <DIR>          conf
2024-03-11  오전 10:12             6,375 CONTRIBUTING.md
2024-03-11  오전 10:12    <DIR>          lib
2024-03-11  오전 10:12            58,153 LICENSE
2024-03-11  오전 10:12    <DIR>          logs
2024-03-11  오전 10:12             2,401 NOTICE
2024-03-11  오전 10:12             3,422 README.md
2024-03-11  오전 10:12             7,075 RELEASE-NOTES
2024-03-11  오전 10:12            16,982 RUNNING.txt
2024-03-11  오전 10:12    <DIR>          temp
2024-03-11  오전 10:12    <DIR>          webapps
2024-03-11  오전 10:12    <DIR>          work
               7개 파일             115,924 바이트
               9개 디렉터리  152,290,918,400 바이트 남음

C:\TomcatWork2\apache-tomcat-9.0.87>.\bin\startup.bat
Using CATALINA_BASE:   "C:\GDJ_60KMJ\apache-tomcat-9.0.71"
Using CATALINA_HOME:   "C:\GDJ_60KMJ\apache-tomcat-9.0.71"
Using CATALINA_TMPDIR: "C:\GDJ_60KMJ\apache-tomcat-9.0.71\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk-17.0.5"
Using CLASSPATH:       "C:\GDJ_60KMJ\apache-tomcat-9.0.71\bin\bootstrap.jar;C:\GDJ_60KMJ\apache-tomcat-9.0.71\bin\tomcat-juli.jar"
Using CATALINA_OPTS:   ""
C:\TomcatWork2\apache-tomcat-9.0.87>

.\bin\startup.bat

압축을 푼 상태에서 여러 디렉토리가 모여있는 곳으로 이동해 bin 이라고 하는 바이너리 디렉토리 안에 들어가 startup.bat으로 톰켓 서버를 가동 시킨다.

이때 꼭 OpenJDK를 설치하고 환경변수 세팅을 꼭 해줘야 서버가 가동된다.
나는 JDK 17을 사용하였다.

http://localhost:8080/ 로 들어가면 톰켓 홈페이지가 표시가 되는 것을 확인할 수 있다.

Jenkins가 8080을 쓸 것이기 때문에 톰캣의 웹서버 포트를 8080 대신에 다른 포트를 사용 할 것이다.

.\bin\shutdown.bat

조금 전에 입력했던 startup 이라는 명령어 대신에 shutdown 이라는 명령어 그리고 배치 파일을 실행하게 되면 톰캣 서버가 기동이 중지가 된다.

🎇 Tomcat 사용자 및 권한 구성 수정

톰캣 서버에 설치를 한 다음에 어플리케이션을 스크립트 형태로 실행할 수 있도록 톰캣의 어떤 사용자 계정이라든가 권한 부분을 수정해주어야 한다.

톰캣 홈 디렉토리에 conf라고 되어 있는 디렉토리도 있고, 그 밑에 webapps라는 디렉토리가 있다.

conf 라는 디렉토리에 있는 폴더에 있는 내용은 각종 설정을 담당하고 있고, webapps 라고 되어 있는 폴더는 웹 어플리케이션 폴더라고 해서 톰캣이 관리하고자 하는 웹 어플리케이션들이 여기에 저장이 된다.

두 가지 설정 사항을 Visual Studio Code 에서 변경해보자.

code .

명령 프롬프트에서 code . 라 입력하면 현재 디렉토리를 통째로 Visual Studio Code 에서 열린다.

8080 포트번호 -> 8088 포트번호 변경

왼쪽에 있는 항목 중에서 conf 라고 되어있는 항목을 클릭한 후 server.xml항목을 클릭한다.

그리고 69번째 라인에 포트번호가 8080으로 명시되어 있는데 이것을 8088로 변경해주었다.

127.0.0.1 로만 접속하도록 해놓은 제약사항 주석처리

webapps/manager/META-INT로 차근차근 내려다가 보면 context.xml 파일이 있다.

해당 파일을 보면 하단에 접속할 수 있는 정보를 127.0.0.1 로만 접속할 수 있도록 제약을 걸어 놨는데 이 부분을 주석으로 막아 주었다.

이하 동문

webapps/host-manager/META-INT로 내려가면 동일하게 context.xml이 있다.

여기서도 동일한 주석 처리를 해준다.

conf라는 디렉토리에 tomcat-users.xml 이라는 파일이 있다.

이 파일의 제일 밑으로 내려가면 현재 등록되어 있는 user라든가 아니면 role이라든가 이런 것들이 주석처리 되어있다.

해당 주석을 풀고 여기다가 role과 user를 몇 가지 추가하였다.

추가한 내용은 다음과 같다.

  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <user username="admin" password="admin" roles="manager-gui, manager-script, manager-jmx, manager-status"/>
  <user username="deployer" password="deployer" roles="manager-script"/>
  <user username="tomcat" password="tomcat" roles="manager-gui"/>

Apache Tomcat의 관리자 응용 프로그램에 대한 사용자 역할을 구성해주었다.

  • admin 사용자:

    사용자 이름: admin
    비밀번호: admin
    역할: manager-gui, manager-script, manager-jmx, manager-status
    이 사용자는 GUI 및 스크립트 기반으로 Tomcat의 관리자 기능을 모두 사용될 것

  • deployer 사용자:

    사용자 이름: deployer
    비밀번호: deployer
    역할: manager-script
    이 사용자는 스크립트를 사용하여 애플리케이션을 배포하는 데에만 사용될 것

  • tomcat 사용자:

    사용자 이름: tomcat
    비밀번호: tomcat
    역할: manager-gui
    이 사용자는 Tomcat 관리자 GUI에만 액세스할 수 있음

모든 설정이 끝났으면 서버를 재부팅하고 접속해보자.

http://localhost:8088 로 접속이 되는 것을 확인할 수 있다.

접속 화면에서 우측에 있는 Manager App을 클릭한다.

그러면 사용자이름하고 비밀번호를 물어보는데 추가했던 계정 중에서 tomcat을 이름과 비밀번호에 입력하여 로그인 한다.

로그인 하면 현재 톰캣 웹서버가 가지고 있는 어플리케이션 항목들을 확인할 수 있다.

이 항목들에다가 나중에 Jenkins를 통해서 업데이트하는, 즉 업로드하는 데이터 내용을 여기서 확인해 보도록 하자.

출처

Jenkins를 이용한 CI/CD Pipeline 구축

profile
Velog에 기록 중

0개의 댓글