본문 바로가기
개발/개발환경

[Jenkins] 빌드부터 배포까지 1 - 젠킨스 설치

by onethejay 2022. 8. 1.
728x90

젠킨스란 무엇인가?

젠킨스(Jenkins)는 여러 언어로 작업된 소스 코드들의 빌드, 테스트, 배포 자동화 환경을 구축할 수 있는 도구이다.
CI(지속적인 통합 Continuous Integration)/CD(지속적인 배포 Continuous Deployment) 환경을 이야기할때 빠지지 않는 오픈소스이다.

개발자가 알면 무엇이 좋을까?

어느정도 규모가 있는 회사라면 개발팀과 인프라팀 또는 운영팀 등이 구성되어 있겠지만 그렇지 않은 회사도 많을 것이다.

웹 서비스 프로젝트를 로컬 PC에서 개발이 끝난 후 테스트 서버에 올리려고 한다고 가정해보자.

  1. 먼저 내 PC에서 소스를 빌드해야한다. maven 혹은 gradle로 빌드를 진행하게 될 것이다.
  2. 빌드가 진행되면서 작성했던 테스트 코드를 수행하고 빌드가 완료된다.
  3. 다음으로 완료된 파일을 테스트 서버에 FTP를 통해 업로드 한다.
  4. 그러나 시작 명령어가 작성된 쉘 스크립트 파일은 FTP에서 실행할 수 없으니 ssh로 다시 테스트 서버에 접속한다.
  5. 테스트 서버에 접속하여 서버를 시작하는 쉘 스크립트 파일을 실행한다.

일반적으로 위의 5가지 과정을 통해 서버에 반영하고 서비스하게 된다.
이러한 과정은 개발자도 인프라팀도 손이 여러번 갈 수 밖에 없게 하는 환경을 만든다.

위의 불편한 부분들을 해소하고자 나온 것 중 하나가 젠킨스이다.
개발자는 개발에만 집중하고, 완료된 소스를 형상 관리에 업로드 하면 인프라 담당자는 완료된 소스를 서버에 반영만 하면 된다.

이번 포스팅에서는 위의 과정을 직접 실습해보면서 혼자 빌드부터 배포까지 알아보고,
만약 이미 젠킨스가 구축되어 있다면 어떻게 내가 올린 소스가 빌드와 테스트 과정을 거쳐 배포되는지 알아 볼 수 있을 것이다.

젠킨스 설치

도커가 구성되어 있는 환경에서 작업한다. (만약 직접 구성하고 싶다면 젠킨스 공식 사이트에서 다운로드 받아 진행할 수 있다.)

먼저 젠킨스 도커 이미지를 다운로드 받는다.

docker pull jenkins/jenkins:lts-jdk11

젠킨스 Repository 명을 확인한다.

docker images

이어서 젠킨스를 실행한다. 이름은 jenkins로 지정했다.

docker run -d -p 8081:8080 --name jenkins -u root jenkins/jenkins:lts-jdk11

젠킨스가 제대로 실행되고 있는지 확인한다.

docker ps

웹 브라우저를 통해 젠킨스 페이지에 접속해본다.

http://localhost:8081

비밀번호를 설정한 적이 없는데 비밀번호를 물어본다. 이럴때는 당황하지 말고 도커 로그를 확인하자.
docker logs [실행중인 컨테이너 이름]

docker logs jenkins

로그를 확인하다보면 아래 사진처럼 랜덤한 문자열이 보일것이다. 해당 문자열을 복사해서 비밀번호에 넣어주자.

Continue를 누르면 Customize 할건지 물어본다. 그냥 왼쪽 버튼을 눌러주자.

젠킨스 설치가 시작된다. 시간이 꽤 오래 걸리니 천천히 기다리자.

기다리다보면 관리자 계정을 생성하는 창이 나타난다. 쭉 입력 후 Save and Continue를 누른다.

URL 창이 나타나면 Save and Finish를 눌러 마무리한다.

젠킨스 설치가 완료되었다.

728x90

댓글