CI CD InfraStructure/Jenkins

[Jenkins] Jenkins에서 SSH 세팅 및 Item (Project) 배포

유혁스쿨 2023. 7. 10. 10:20
728x90
반응형

Jenkins SSH세팅

 

1. jenkins관리의 Plugins 선택

 

 

2. Publish Over SSH 검색 - 체크 - Install wtihout restart

 

 

3. jenkins관리의 System 선택

 

 

4. 최 하단 Publish over SSH 선택후 SSH Servers추가 버튼 클릭

 

 

5. SSH Server 정보 입력

 

 

6. [고급] 패스워드 지정

 

 

7. [고급] 본인이 설정한 SSH 포트번호 지정

 

 


Jenkins SSH 배포 및 직접 실행

 

1. 구성 - 빌드 후 조치 이동

 

 

2. 빌드 후 조치 추가 버튼 클릭 후 Send build artifacts over SSH 선택

 

 

3. 이전에 Jenkins에 등록한 SSH Server를 선택해준다.

 

 

4. Transfers 데이터 입력 후 최종 저장

Transfer Set 정보와 Remove prefix에 입력한 정보에 의해 target 디렉토리 하위의 .war확장자를 가진 파일이 실제 SSH서버에 복사하겠다는 설정이다.

 

 

5. 빌드 후 빌드내용 확인

 

 

7. 이미지 및 컨테이너 생성

현재 가상환경에 복사된 war파일이 docker를 이용해서 실행할 수 있는지 테스트

# docker build -t docker-server -f Dockerfile .
혹은
# docker build --tag=docker-server -f Dockerfile .

이미지 확인하기

이미지 목록 보기
# docker images

목록으로부터 확인된 이름을 통해 상세보기
# docker image inspect docker-server:latest

 

 

8. 컨테이너 내부에서 톰캣을 실행시키기

컨테이너 내부의 톰캣을 8080이라는 포트로 기동할 예정이다

# docker run -p 8080:8080 --name mytomcat docker-server:latest

 

주소창에 localhost:8080/빌드한 프로젝트명 으로 접속

 


Jenkins SSH 배포 및 빌드후 조치 처리

 

1.  방금 실행한 image와 컨테이너 프로세스 중지 및 제거 

# docker stop mytomcat
# docker rm mytomcat
# docker rmi docker-server:latest
# docker rm -rf webapp.war

2. 빌드후 조치에서 빌드 후 서버에 배포할 명령어 입력

docker build --tag=cicd-project -f Dockerfile .;
docker run -d -p 8080:8080 --name mytomcat cicd-project:latest

를 입력한다. ; 세미콜론은 다음줄에 오는 다른 명령어와의 구분을 위함이다.

 

3. 지금빌드 및 cmd로 배포상태 확인

브라우저 주소로도 잘 작동된다.

 

(Jenkins를 통해 현재까지의 작업을 반복하여 빌드/배포 할때, docker에 processor와 빌드이미지가 존재하고 있으면 작업이 되지 않기 때문에 1번 과정을 반복해 줘야한다.)

728x90
반응형