vagrant up
vagrant ssh jenkins
### 터미널 창 하나 더 열어서
vagrant ssh tomcat
tomcat터미널 창에서..
아래 명령어를 차례로 입력해준다.
sudo apt update
sudo apt install -y tomcat9 tomcat9-admin
systemctl status tomcat9
tomcat이 잘 설치된 것을 확인
ctrl
+c
를 눌러서 빠져나올 수 있다.
cd /var/lib/tomcat9/webapps/ROOT
ls
cat index.html
이때 보이는
index.html
파일이 tomcat이 읽어들이는 파일이다.
크롬창에
192.168.59.11:8080
주소를 치고 들어가면..
아까 그 index.html파일을 읽은 웹페이지를 확인할 수 있다.
크롬창에 아래 주소로 접속을 해보면 관리자 페이지를 접속하기위한 아이디와 패스워드를 입력하라고 보인다.
http://192.168.59.11:8080/manager/html
하지만 우리는 아이디와 비밀번호를 설정해놓지 않았기 때문에 접속할 수가 없다.
터미널 tomcat에서..
아래 명령어를 입력한다.
sudo vi /etc/tomcat9/tomcat-users.xml
참고로 xml파일의 '<! --
부터 -->
까지는 주석이므로 그냥 설명문이다.
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="P@ssw0rd" roles="manager-gui, manager-script, manager-jmx, manager-status"/>
이렇게
version="1.0">
밑에 위 내용을 복사 붙여넣기 해준다.
해주고esc
+:wq
로 저장하고 나오자.
아래 명령어를 통해 tomcat9
의 변경사항을 재시작을 통해서 적용시켜준다.
sudo systemctl restart tomcat9
다시 크롬창에 아래 주소로 접속해본다.
http://192.168.59.11:8080/manager/html
사용자 이름은 admin
비밀번호는 P@ssw0rd
접속해보면 아래와 같은 관리자페이지가 뜬다
이제 tomcat
에 아까 Maven
으로 만든 .war
파일을 옮겨서 실행시켜볼 예정이다.
jenkins 터미널로 이동해서..
cp /var/lib/jenkins/workspace/test/webapp/target/webapp.war /tmp
scp /tmp/webapp.war 192.168.59.11:/tmp
### Are you sure you want to continue connecting (yes/no/[fingerprint])?
yes
### vagrant@192.168.59.11's password:
vagrant
tomcat 터미널로 이동해서..
아래 명령어를 그대로 입력한다.
sudo mkdir /var/lib/tomcat9/webapps/ROOT/webapp
sudo cp /tmp/webapp.war /var/lib/tomcat9/webapps/ROOT/webapp/
ls /var/lib/tomcat9/webapps/ROOT/webapp/
### .war파일이 잘 옮겨진 것을 확인할 수 있다.
file /var/lib/tomcat9/webapps/ROOT/webapp/webapp.war
### unzip 패키지가 필요하다는 것을 확인할 수 있다.
sudo apt install unzip
sudo unzip /var/lib/tomcat9/webapps/ROOT/webapp/webapp.war -d /var/lib/tomcat9/webapps/ROOT/webapp/
ls /var/lib/tomcat9/webapps/ROOT/webapp/
### -d 옵션을 통해 압축을 해제할 위치를 정할 수 있다.
### webapp.war파일은 이제 사용하지 않으므로 rm 명령어를 통해 제거해준다.
sudo rm /var/lib/tomcat9/webapps/ROOT/webapp/webapp.war
크롬창에 아래 주소로 접속해본다.
http://192.168.59.11:8080/webapp/
cat /var/lib/tomcat9/webapps/ROOT/webapp/index.jsp
### 이 파일을 읽은것과 마찬가지이다.
이제 jenkins를 활용해서 같은 작업을 해줄 텐데 그 전에 아까 실습했던 내용은 아래 명령어를 통해 지우자.
sudo rm -rf /var/lib/tomcat9/webapps/ROOT/webapp/
ls /var/lib/tomcat9/webapps/ROOT/
지워진거 확인
젠킨스 홈페이지로 다시 돌아와서..
http://192.168.59.10:8080/
왼쪽 메뉴바에
jenkins 관리
클릭
오른쪽
플러그인 관리
클릭
상단 메뉴파에서 왼쪽에서 두 번째
설치 가능
클릭
오른쪽 상단에
search
에container
라고 검색한다.
목록에서
Deploy to container
를 찾아서 왼쪽 체크박스를 활성화한다.
왼쪽 아래의
Install without restart
클릭
대시보드로 이동하고..
새로운 Item
클릭
이름은
Deploy-to-Tomcat-with-Maven
으로 하고Maven project
를 클릭하고 왼쪽 아래에OK
를 클릭해준다.
소스코드 관리의 Git을 활성화 시켜준다.
https://github.com/re-Push/source-java-maven-hello-world
아래 입력한 URL은 내 리포지토리이고 실습하시는 분들은본인
의 Git 리포지토리 주소를 입력해주셔야한다.
master로 되어있는 부분을 main으로 변경해준다.
clean package
를 입력해준다. 의미는 기존 내용을 지우고 package 하라는 뜻이다.
빌드 후 조치 추가
를 클릭한다. 그리고 아까 설치한 플러그인Deploy war/ear to a container
를 클릭해준다.
그러면 이런 창이 뜨는데
아래표와 같이 설정해준다.
항목 설정값 Deploy war/ear to a container WAR/EAR files webapp/target/webapp.war Context path
그리고
Add Container
클릭
Tomcat 9.x Remote
를 클릭해준다.
Add
를 누르고Jenkins
클릭
이런 화면이 나온다.
이렇게 설정해주고
Add
클릭
항목 설정값 Username admin Password P@ssw0rd ID tomcat-admin
왼쪽
none
부분을 클릭해서 admin/***으로 바꿔준다.
Tomcat URL부분도 아래와 같이 편집해준다.
http://192.168.59.11:8080
Apply
먼저 누르고저장
작업공간 초기화
선택 하고확인
cd /var/lib/tomcat9/webapps/
ls
ROOT 디렉토리 빼고는 전부 지워주면 된다.
### rm -rf명령어를 통해 지울 수 있다.
sudo rm -rf webapp
sudo rm -rf webapp.war
ls
Build Now
를 클릭해서 지금까지 구성한 내용을 테스트해보자.
크롬창에 192.168.59.11:8080/webapp/
으로 접근하면..
그리고 tomcat 가상머신에서..
cd /var/lib/tomcat9/webapps
ls
이렇게 잘 받아진 것을 확인할 수 있다.