[05.Jenkins 배포 및 파이프라인 #3], [06.Jenkins 배포 및 파이프라인 #3 실습]
배포를 하기 위해서 Plugin을 설치해야 한다. 젠킨스의 [플러그인 관리]로 들어가서 설치가능으로 들어간다.
Publish Over SSH를 이용하면 AWS key만으로도 빌드를 손쉽게 할 수 있다. 보통 플러그인을 설치하고 한번 재시작을 해준다.
[시스템설정]에 들어가 하단부분에 Publish over SSH를 셋팅해준다.
ssh-keygen -t rsa
ssh-keygen -t rsa를 입력해서 키정보를 생성하고 해당 정보를 입력해주면 된다. cat id_rsa.pub로 파일의 내용을 확인하면, key 정보를 알 수 있고 해당 정보를 붙여넣기 하면 된다. 해당 권한이 있어야 하기 때문에, chmod로 .ssh , .ssh/id_rsa, id_rsa.pub의 권한들을 셋팅해야 한다.
[Path to key]에 키 정보 위치정보를 셋팅한다 Key에는 cat으로 확인했던 값을 넣어준다. SSH Servers는 Name에 tomcat, Hostname에 실제 서버 ip주소, Username에 ec2-user, Remote Directory는 /opt/tomcat으로 설정해준다. Path to key는 aws의 pem위치를 가리키면 된다.
빌드 후 저치에 Build는 Send build artifacts over SSH를 선택한다. name에 미리 셋팅했던 tomcat과 해당 정보들이 자동으로 셋팅된다. Transfer set에서 Remove prefix는 올라가는 파일을 보면서 어느 위치로 war에 올라가는지, 실제로 지워야하는 명칭은 어디인지 확인한다. [Remote directory]는 webapps를 입력한다.Exec conmmand는 다시 재시작할 때의 명령어를 써주면 된다. sudo systemctl restart tomcat을 기본적으로 설정한다. [Source file]은 **/*.war로 war 파일을 강제적으로 명칭과 위치를 잡아준다
Pom.xml에 들어가 <finalName>ROOT</finalName>으로 Root.war 이름을 우리가 만든 것으로 생성할 수 있다. war로 배포하는 bitbucket 정보를 토대로 pr을 날려서 새롭게 정보를 만들어서 pull request를 받는다.
추가적으로 aws에서 아웃바운드 정책에서 기본으로 8080, 그리고 7000을 public으로 열어준다
public ip는 계속 바뀌기 때문에 aws에서 탄력적 ip로 고정 ip로 만들어주어야한다.(돈이 나가기 때문에 유의한다)
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'회고 > aws&docker fastcampus' 카테고리의 다른 글
AWS/Docker 클라우드 패스트캠퍼스 챌린지 15일차 (0) | 2021.09.20 |
---|---|
AWS/Docker 클라우드 패스트캠퍼스 챌린지 14일차 (0) | 2021.09.19 |
AWS/Docker 클라우드 패스트캠퍼스 챌린지 12일차 (0) | 2021.09.17 |
AWS/Docker 클라우드 패스트캠퍼스 챌린지 11일차 (0) | 2021.09.16 |
AWS/Docker 클라우드 패스트캠퍼스 챌린지 10일차 (0) | 2021.09.15 |