AWS EC2(Amazon Linux 2)에 Jenkins 설치하기 ( AWS / EC2 / Linux / Jenkins ) _220713_업데이트
🌜 Server/Jenkins

AWS EC2(Amazon Linux 2)에 Jenkins 설치하기 ( AWS / EC2 / Linux / Jenkins ) _220713_업데이트

728x90

안녕하세요. 그린주입니다 ๑'ٮ'๑
오늘도 힘차게 시작해보겠습니다!

 

개요

이번 글에서는 AWS EC2(Amazon Linux 2)에 Jenkins 설치하는 방법을 공유하고자 합니다.

  참고로 JAVA가 설치되어있고 Jenkins 인바운드 규칙 접속 설정이 되어있다는 가정하에 시작하겠습니다.

 

AWS EC2(Amazon Linux 2)에 JAVA8 설치 및 환경변수 설정하기 ( AWS / EC2 / Linux2 / JAVA )

안녕하세요. 그린주입니다 ๑'ٮ'๑ 경험이 많이 부족하지만 최선을 다해 적어보겠습니다! 개요 이번 글에서는 AWS EC2(Amazon Linux 2)에 JAVA8 설치 및 환경변수 설정하는 방법을 공유하고자 합니다.

green-joo.tistory.com

 

AWS EC2 보안그룹 인바운드 규칙 접속 설정 ( AWS / EC2 / Linux2 / 보안그룹 / 인바운드 규칙 / Nginx / Jenki

안녕하세요. 그린주입니다 ๑'ٮ'๑ 경험이 많이 부족하지만 최선을 다해 적어보겠습니다! 개요 이번 글에서는 AWS EC2 보안 그룹 인바운드 규칙 접속 설정 방법을 공유하고자 합니다. 목차 인바

green-joo.tistory.com


목차

Jenkins 설치

사용자 계정 권한 변경

기본 포트 변경

Jenkins 접속


Jenkins 설치

Amazon Linux 2에서는 Jenkins설치에 필요한 Java 설치가 되어있지 않습니다. Java가 설치되어있는지 확인 후  설치를 진행하시기 바랍니다.  Amazon Linux 2 Java 8 설치 방법

1. 버전 확인

현재 자신의 서버가 Amazon Linux2가 맞는지 확인합니다.

$ cat /etc/⁕release


2. yum 최신화

$ sudo yum -y update

3. yum 저장소 등록

먼저 wget으로 Jenkins 저장소를 yum 저장소에 다운로드합니다.

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

 

정상적으로 import 합니다.

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

4. Jenkins 설치

이제 패키지가 수동으로 저장소에 등록되었으니 yum install을 진행합니다.

$ sudo yum install jenkins

설치 후 아래와 같이 설치된 젠킨스 정보를 확인할 수 있습니다.

  버전에 따라 아래 (선택) 설정 파일이 다르기 때문에 나중에 설정을 바꿔야 할 때 기억해둡니다.


5. Jenkins 실행

설치가 끝났다면 아래 명령어로 부팅 시 Jenkins 서비스를 활성화합니다.

$ sudo systemctl enable jenkins

 

Jenkins 서비스를 실행합니다.

$ sudo systemctl start jenkins

 

정상적으로 Jenkins가 실행되었는지는 아래 명령어로 확인합니다.

$ sudo systemctl status jenkins


사용자 계정 권한 변경(선택)_220713 설정 파일 수정

아래 명령어로 Jenkins 설정 파일을 열어줍니다.

  Jenkins 2.335 이상 및 2.332.1 LTS 이상을 실행하는 사용자는 이 마이그레이션의 영향을 받습니다. 설정 파일 위치가 변경되었습니다. 기본 서비스 단위는 읽기 전용이며 수동으로 편집할 수 없습니다.

 

Jenkins 2.335 및 2.332.1 LTS 이전 버전

$ sudo vi /etc/sysconfig/jenkins

Jenkins 2.335 및 Jenkins 2.332.1 이상 버전

$ sudo vi /usr/lib/systemd/system/jenkins.service

 

JENKINS_USER를 찾아(/JENKINS_USER) 원하는 계정으로 수정합니다. 저는 ec2-user로 수정했습니다.

/etc/sysconfig/jenkins
/usr/lib/systemd/system/jenkins.service

설정 후 변경사항을 반영하기 위해 데몬 재시작과 서비스를 재시작해줍니다. 

$ sudo systemctl daemon-reload
$ sudo systemctl restart jenkins

기본 포트 변경(선택)

Jenkins의 기본 포트는 8080입니다.

변경은 자유입니다. 포트가 겹친다거나 다른 포트로 설정해야 할 경우 변경하시면 됩니다.

 

아래 명령어로 Jenkins 설정 파일을 열어줍니다.

  Jenkins 2.335 이상 및 2.332.1 LTS 이상을 실행하는 사용자는 이 마이그레이션의 영향을 받습니다. 설정 파일 위치가 변경되었습니다. 기본 서비스 단위는 읽기 전용이며 수동으로 편집할 수 없습니다.

 

Jenkins 2.335 및 2.332.1 LTS 이전 버전

$ sudo vi /etc/sysconfig/jenkins

Jenkins 2.335 및 Jenkins 2.332.1 이상 버전

$ sudo vi /usr/lib/systemd/system/jenkins.service

 

JENKINS_PORT를 찾아(/JENKINS_PORT) 원하는 포트로 수정합니다. 저는 8081로 수정했습니다.

/etc/sysconfig/jenkins
/usr/lib/systemd/system/jenkins.service

설정 후 변경사항을 반영하기 위해 데몬 재시작과 서비스를 재시작해줍니다. 

$ sudo systemctl daemon-reload
$ sudo systemctl restart jenkins

 

8081 포트로 실행되고 있는지 확인해보겠습니다. 아래와 같이 httpPort가 8081로 변경된 것을 확인할 수 있습니다.

 

8081 포트로 접속이 되는지 확인해보겠습니다.


Jenkins 접속

퍼블릭 IPv4:[설정한 포트 or 기본 포트 8080]으로 접속을 합니다. 정상적으로 접속되는 것을 볼 수 있습니다.

  사이트에 연결할 수 없음이 나올 경우 인바운드 규칙 설정이 되어있는지 확인 부탁드립니다.

 

초기 비밀번호를 Administrator password에 붙여 넣기 합니다. 비밀번호 조회 명령어는 아래와 같습니다.

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

 

Install suggested plugins를 클릭하여 jenkins가 추천하는 플러그인들을 설치합니다.

 

첫 로그인을 진행할 계정도 하나 생성합니다. admin 유저를 만들어 줍니다.

URL 설정 페이지는 이후에 수정이 가능하니 수정 작업 없이 다음으로 넘어갑니다. 아래와 같은 화면이 나오면, Jenkins 설치 및 초기 세팅이 마무리되었습니다.

 

설치가 다 되셨다면 이후에 플러그인을 추가로 설치해 gitLab으로 교체하거나 머티리얼 테마로 변경하는 등 본인만의 Jenkins로 꾸미시면 됩니다.


마무리

이렇게 AWS EC2(Amazon Linux 2)에 Jenkins 설치하는 방법에 대해 적어보았습니다.
다들 성공하셨을까요?? 끝까지 파이팅입니다!

 

Jenkins는 스크립트나 Docker로 쉽게 설치할 수도 있지만 본인이 수동으로 한번 설치를 해보는 것을 추천드립니다. 그러면 나중에 설정을 변경해야 하거나 업데이트할 때 좀 더 쉽게 해결할 수 있기 때문입니다.

 

 

sudo: no tty present and no askpass program specified ( Jenkins / Linux )

안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 sudo: no tty present and no askpass program specified 오류 처리 방법을 공유하고자 합니다. 목차 sudo 설명 문제..

green-joo.tistory.com

 

긴 글 봐주셔서 감사합니다!
오늘도 행복한 하루 보내세요 '◡'✿


참고

https://blog.nachal.com/1615

https://jojoldu.tistory.com/354

https://server-engineer.tistory.com/766

https://velog.io/@yundleyundle/AWS-EC2에-Jenkins-설치하기
https://dev-elop.tistory.com/entry/linux-jenkins-install


728x90
728x90