CentOs7에 Jenkins(젠킨스)설치하기


선행작업

CentOs7에 jdk 설치 CentOs7에 메이븐(maven) 설치


들어가기

이 글에서는 CentOs7에 Jenkins를 설치해보도록 하겠다. 젠킨스를 사용하려면 jdk와 메이븐이 CentOs에 먼저 설치되어 있어야 한다. 실습의 편의를 위헤 selinux는 꺼져있는 환경에서 실습했다.


젠킨스(jenkins)란?

젠킨스는 자바로 작성된 오픈 소스 소프트웨어로 지속적인 통합(CI:Continuous Integration)와 지속적인 배포(CD:Continuous Delivery)를 제공한다. 개발자가 소스코드를 수정하여, 그것들을 svn나 git 같은 형상관리 도구에 올리면 젠킨스는 그 내용들을 자동으로 읽어 빌드 및 테스트등의 작업을 실행할 수 있다. 즉 젠킨스는 CI에서 핵심적인 역할을 한다.


젠킨스 주요기능

  • 형상관리 도구와의 연동
  • 웹 인터페이스
  • 빌드 및 테스트 자동화
  • 코드 품질 검사
  • 배포 관리 자동화
  • 그루비 스크립트를 이용한 자유로운 잡 스케줄링
  • 소스 코드 체크아웃
  • 테스트 보고서 생성
  • 실행 결과 통보
  • 다양한 인증 기반과 결합한 인증 및 권한 관리
  • 분산 빌드(마스터 슬레이브)

젠킨스 설치하기

Jenkins 설치를 위한 yum레파지토리 설정

1
2
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

아래 명령으로 젠킨스를 설치하자.

1
sudo yum install jenkins

Jenkins에 사용할 포트 설정하자. /etc/sysconfig/jenkins 파일을 열어 수정하도록 하자.

1
sudo vi /etc/sysconfig/jenkins

파일은 연뒤 아래 내용을 추가하여 젠킨스의 웹 포트를 9090으로 변경하자.

1
JENKINS_PORT="9090"

JENKINS_PORT 설정화면

Jenkins의 9090 포트 사용을 위한 방화벽 설정을 하자

1
2
sudo firewall-cmd --permanent --zone=public --add-port=9090/tcp
sudo firewall-cmd --reload

젠킨스 설치와 설정이 끝났다.


Jenkins 서비스 명령어

Jenkins 시작

1
sudo service jenkins start

Jenkins 종료

1
sudo service jenkins stop

Jenkins 재시작

1
sudo service jenkins restart

CentOs에서 젠킨스를 항상 실행하게 설정

1
systemctl enable jenkins


브라우저로 젠킨스에 접속해보기

service jenkins start를 이용해 젠킨스를 동작시키고, 호스트에서 브라우저를 열고 ip:9090으로 접속해 보자

젠킨스 웹 최조 접근시 화면

최초 젠킨스 시작뒤 브라우저에 접속하면 나오는 화면이다. 설명과 같이 경로에 있는 키를 복사하여 입력하면 젠킨스 최초 셋팅이 진행된다.

1
view /var/lib/jenkins/secrets/initialAdminPassword

위 명령어로 해당 파일을 열어보면 한줄의 코드가 있을 것이다. 그것을 복사해서 Administrator password에 입력한뒤 Continue를 클릭하자.

그러면 아래와 같은 화면이 나온다. 젠킨스는 다양한 기능들을 플러그인으로 제공한다. install suggeested plugins 를 클릭해 기초 플러그인을 설치하자. 추후 필요한 플러그인이 있다면, 추가 설치도 가능하다.

젠킨스 기초 플러그인 설치

아래처럼 기초 플러그인이 설치가 되는데 시간이 좀 걸린다.

젠킨스 기초 플러그인 설치 진행

그 다음에 다음과 같이 관리자 정보를 입력하라고 나온다. 적절하게 입력하고 진행하자

젠킨스 관리자 정보 생성

그다음 계속 진행하다 보면 다음과 같이 젠킨스 페이지가 뜨면 젠킨스 설치가 완료된 것이다.

젠킨스 기초 플러그인 설치 진행

젠킨스 설치 끝