Ansible - Jenkins 연동하여 배포하기2

salgu·2022년 12월 22일
0

ansible

목록 보기
4/4
post-thumbnail

Ansible-Server Setting


setting

Docker hub에 로그인 해줍니다.

현재 실습할 이미지를 Docker hub에 올리기 위해

docker tag {현재 이미지 이름} {변경할 이미지 이름}

tag 명령어를 이용하여 이미지 이름을 변경해줍니다.

Ansible Playbook에 작성할 빌드 task 테스트

Docker hub에 image를 push해줍니다.

빌드 Ansible Playbook yml 작성

Ansible Playbook yml 작성해줍니다.

  • Jenkins에서 SSH로 복사된 war 파일을 빌드합니다
  • 생성된 이미지를 DockerHub에 Push합니다.
  • 해당 이미지를 삭제해줍니다.

빌드 Ansible Playbook 테스트

ansible-playbook -i /etc/ansible/hosts build-image-cicd-project.yml --limit 172.17.0.3

Ansible이 적상적으로 동작하는지 확인해 줍니다.

배포 Ansible Playbook 작성

배포할 task를 적은 Ansible Playbook을 작성하고 컨테이너가 잘 받아와서 실행됐는지 확인해 줍니다.

배포할 대상 인스턴스 등록

Ansible의 대상 인스턴스 등록은 /etc/ansible/hosts 에 해주는게 일반적입니다.

배포 Ansible Playbook 실행

ansible-playbook -i /etc/ansible/hosts create-container-cicd-project.yml --limit 172.17.0.4

정상적으로 대상 인스턴스에 배포가 되었는지 확인해줍니다.




Jenkins 세팅


Send build artifacts over SSH -> SSH Publishers -> Exec command
에 '빌드 Ansible Playbook'과 '배포 Ansible Playbook'을 순서대로 실행해 주면 정상적으로 배포가 된것을 확인할 수 있습니다.

profile
https://github.com/leeeesanggyu, leeeesanggyu@gmail.com

0개의 댓글