Jenkins, EC2(Ubuntu) 설치하기

2024. 5. 27. 16:26· DevOps
목차
  1. 0. 들어가며
  2. 1. Jenkins 설치
  3. 2. Jenkins 삭제

0. 들어가며

사이드 프로젝트로 2인 개발을 시작했다. 전 팀프로젝트에서 Github Actions를 사용해서 무중단배포까지 구축해봤는데, 이번에는 현업에서 자주쓰이는 jenkins를 경험해보고싶어 Jenkins로 결정하게 되었다. 원래 규모가 작은 프로젝트인만큼 Github Actions를 쓰는게 여러모로 가볍고 좋았겠지만, 좋은 경험 기회라고 생각되어 도전해봤다.

AWS EC2 인스턴스 구축하는 방법은 블로그에도 이미 있고, 다른 블로그에도 글이 많으니 생략하겠다.

나는 서버비 문제로 우선 프리티어로 EC2를 만들었다.

근데 설치해보니 그리 어렵진않지만 Docker를 저번에 써봣으니 docker로 다시 해봐야겠다 하고 설치까지만하고 삭제하고 Docker로 재설치하려고한다. 이 글에서는 Docker 없이 시행착오를 겪어가며 스스로 정리해두는 겸 설치하는 방법을 소개한다.

1. Jenkins 설치

먼저 Ubuntu EC2에 Java17 환경을 세팅해줘야한다.

나는 프로젝트에서 17을 사용하기 때문에 17로 했고, 원하는 자바 버전을 설치하면 된다.

 

sudo apt update
sudo apt install fontconfig openjdk-17-jre


1-2. Jenkins install
이제 ubuntu에 jenkins를 설치해준다.

sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null

 

sudo apt-get update

 

sudo apt-get install jenkins

 

순서대로 터미널에 명렁어를 입력하자.

입력 후 jenkins가 올바르게 설치되었는지 확인해봐야한다.

sudo systemctl status jenkins

 

jenkins의 status를 확인할 수 있는 명령어다.


active(running)으로 정상 작동되었다.

그런데, Jenkins의 default 포트번호는 8080이다.
Spring Boot에 내장되어있는 톰캣의 default 포트번호도 8080이기 때문에 이를 변경해줘야한다.

아래 두 명령어로 포트번호를 8080에서 8090으로 바꿔줬다.

 

첫번째,

sudo vi /etc/default/jenkins


변경 방법은 i (insert)를 입력하고 원하는 부분에서 수정한 후, esc, :wq (저장 후 종료) 를 하면 된다.

다음 파일은 설정값을 바꿔줘도 바로 포트번호 변경이 적용되지는 않는다.
왜냐하면 jenkins.service 파일은 read only 이기 때문에 파일 권한을 수정해줘야한다.

아래 명령어중 위 명령어로 파일 권한을 수정해주고, 그 다음 명령어를 입력하여 포트번호를 변경한다.

sudo chmod 777 /usr/lib/systemd/system/jenkins.service
sudo vim /usr/lib/systemd/system/jenkins.service


포트번호를 변경했으니 젠킨스를 재시작해준다.

sudo service jenkins restart


이때, Ubuntu 터미널에서 

Warning: The unit file, source configuration file or drop-ins of jenkins.service changed on disk. 
Run 'systemctl daemon-reload' to reload units.


이런 경고문구가 나올 수 있다. 

systemctl daemon-reload


경고 문구대로 위 명령어를 입력하자.

이후 다시 재시작을 해주고 
본인의 http://{EC2IP}:{포트번호} 로 접속하면 된다.

 

참고로 EC2 보안 인바운드 편집에 포트를 허용해주지 않았다면 당연히 접속이 되지 않는다.
인바운드 편집에서 변경한 포트번호를 미리 허용해주자.

혹시 접속이 안된다면 젠킨스 재시작을 몇 번 더 해주니까 정상 작동되었다. (적용 시간이 좀 걸리나? 싶었음)


요런 화면이 나오면 성공!
초기 비밀번호는

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


를 입력하면 나온다. 아니면, 아까 status 확인 명령어를 쳐도 초기 비밀번호가 아래에 나온다.

비밀번호를 잘 입력하고나면


요 화면이 나오는데 왼쪽, Install suggested plugins을 클릭하고 설치하고~ 계정 등록해주고 하면 Jenkins 설치가 끝난다!

 

2. Jenkins 삭제

본인은 Docker로 재설치를 할거라 젠킨스를 삭제할거다.
이 부분은 필요한 사람만 참고하는걸로~

 

1. 실행중인 Jenkins 중지
sudo service jenkins stop

2. apt 명령어로 삭제
sudo apt remove jenkins

#Jenkins 패키지 그룹 및 기타 종속 패키지를 제거
sudo apt remove --purge jenkins 
sudo apt remove --auto-remove jenkins



다음 글은 Docker로 딸깍 재설치를 하고 본격적으로 CI/CD 무중단배포 구축까지 달려본다.


  1. 0. 들어가며
  2. 1. Jenkins 설치
  3. 2. Jenkins 삭제
chillmyh
chillmyh
재밌다 https://github.com/95hyun
chillmyh
HELLO RESEKAI
chillmyh
전체
오늘
어제
  • 분류 전체보기 (127)
    • Experience (49)
      • LG CNS AM Inspire Camp 1기 (30)
      • 항해99 18기 (17)
      • conference (2)
    • 트러블슈팅 (8)
    • Backend (32)
      • Java (22)
      • Spring (8)
      • DB (0)
      • Kafka (2)
    • Frontend (1)
    • DevOps (21)
      • Monitoring (2)
      • Infra (17)
      • Git (1)
    • CS (6)
    • Algorithms (3)
    • Other tools (3)
    • 주절주절 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

공지사항

인기 글

태그

  • 네트워크
  • 프론트엔드
  • SSE
  • EC2
  • cicd
  • WIL
  • 브라우저
  • 디지몬
  • github actions
  • nginx
  • HTTP
  • 모니터링
  • LG CNS
  • 김영한
  • Prometheus
  • 트러블슈팅
  • k8s
  • node exporter
  • 기술면접대비
  • spring
  • react
  • 항해99
  • 인프런
  • Kafka
  • Java
  • JPA
  • Grafana
  • 백엔드
  • ubuntu
  • Docker

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
chillmyh
Jenkins, EC2(Ubuntu) 설치하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.