이번에 우연히 Jenkins와 Docker를 사용해 Vue3와 Spring boot 2를 배포하게 되어 그 경험에 대한 내용을 적어보려한다.
Jenkins란?
젠킨스란 소프트웨어 개발시 지속적인 통합(Continuous integration)을 제공해주는 도구이다. 더불어 지속적인 배포 (Continuous Delivery/Deployment)환경까지 구축할수 있는 도구이다.
따라서 Git을 통한 push의 이벤트를 감지하여 자동으로 CI/CD를 수행하도록 도와주는 도구라고 볼 수 있다. (물론 특정 주기에 따라 CI/CD를 수행 할 수도 있고, 여러 방식을 통해 CI/CD를 수행 할 수 있다.)
Docker는 어디서 사용해?
나같은 경우는 Docker를 통해 서버 안에 Jenkins 컨테이너를 올리는 방식으로 사용했다.(https://blog.retrotv.dev/tag/jenkins/ 해당 블로그 내용을 많이 참고하여 진행했다.)
서버에 Docker를 사용해 Jenkins 서버를 여는 과정에 대한 간략한 과정은
- 서버에 Jenkins image 내려받기 (Docker가 설치되어 있어야 한다.)
- 내려받은 Jenkins image를 이용해 Jenkins 컨테이너를 생성.
- 생성 시 배정해준 포트를 통해 Jenkins 관리자 페이지에 접속하기(http://{서버IP}:{배정한포트})
위와 같은 순서에 따라 자신의 서버에 Jenkins 서버를 올릴 수 있고, 이 Jenkins 서버를 이용해 CI/CD 환경을 구축 할 수 있다.
이어서 2편에서는 Jenkins 환경 설정과 Bitbucket 연동에 대해 작성하겠다.
'Infra' 카테고리의 다른 글
[Infra] Jenkins와 Docker를 사용한 Vue3 + Spring boot2 배포 (2) (0) | 2024.05.08 |
---|