젠킨스 실습 환경을 구축하기 위해서 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 이라는 명령어 그리고 배치 파일을 실행하게 되면 톰캣 서버가 기동이 중지가 된다.

톰캣 서버에 설치를 한 다음에 어플리케이션을 스크립트 형태로 실행할 수 있도록 톰캣의 어떤 사용자 계정이라든가 권한 부분을 수정해주어야 한다.
톰캣 홈 디렉토리에 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를 통해서 업데이트하는, 즉 업로드하는 데이터 내용을 여기서 확인해 보도록 하자.