본문 바로가기

Jenkins

[Jenkins]EC2에 Jenkins 설치하기

이번에는 자동화 빌드 도구인 Jenkins를 설치 해보도록 하자

 

Jenkins 설치

 

먼저 EC2를 최신화를 해주기 위해 업데이트를 하자

sudo yum update 

그리고 sudo yum install Jenkins 를 치면 Jenkins가 포함되어 있지 않다는 것을 볼 수 있다.

 

EC2에 기본 패키지에 Jenkins가 포함이 되어 있지 않기 때문에 yum 패키지 저장소에 Jenkins를 수동으로 등록 해줘야한다. 아래 명령어들을 차례대로 등록 해보도록 하자

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

wget으로 Jenkins 저장소를 yum 저장소에 다운을 받았다 이제 Jenkins 저장소 키를 등록 하자

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

이제 패키지가 수동으로 저장소에 등록이 되었으니 설치 해보도록 하자

sudo yum install jenkins

설치가 잘 되었는지 확인을 위해 Jenkins를 실행 해보자

sudo service jenkins start

만약 실행 했을때 java.lang.UnsupportedClassVersionError 이 발생한다면 현재 Jenkins 버전과 설치된 자바 버전간 호환이 되지 않는다는 이야기이다 JAVA 8버전을 설치 해주자

자바 JAVA 8버전 설치는 여기를 참고하자

 

Nginx 설치

보통 Jenkins만 설치 하지 않고 Nginx를 통해 프록시까지는 같이 진행한다고 한다

그래서 함께 설정 해보도록 하자

 

Nginx의 경우 yum의 기본 패키지에 등록되어 있기 때문에 바로 설치가 가능하다

sudo yum install -y nginx

설치가 다 되었다면 프록시 설정을 진행해보도록 하자

이 프록시는 80포트(Nginx)로 들어온 접근을 8080 (Jenkins)로 프록시 패스 해준다

설정 파일(/etc/nginx/nginx.conf)을 열어서 설정 해주자

sudo vim /etc/nginx/nginx.conf

아래의 코드를 다음과 같이 입력 해주자 

proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;

 

설정이 다 되었다면 Nginx를 실행을 해보자

sudo service nginx start

 

Jenkins 설정

먼저 Jenkins를 설정 해주기전에 EC2 인바운드 규칙에 HTTP 포트 80가 없으면 추가해줘야한다.

 

브라우저를 열어 EC2 IP를 검색해보면 아래와 같이 Jenkons 설치 화면이 나온다

화면에 나오는 위치의 password 코드를 입력창에 등록해야한다.

이 코드는 아래와 같이 명령어를 하면 password가 나온다

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

이거를 이제 복사한 다음에 password를 입력 해주자

 

이제 플로그인 설치 화면인데 Jenkins가 추천해주는 플러그인을 설치 하자

설치가 끝나면 계정을 하나 생성해주면 된다.

아래와 같이 설치가 완료된 것을 확인 할 수 있다.

 

다음 시간에는 젠킨스랑 깃이랑 연동을 해보기로 하자