본문 바로가기

DevOps/Jenkins

Jenkins + Git + NodeJS + AWS Elastic Beanstalk로 배포하기(1) - Jenkins 설치 및 기본 세팅, git 연결 :: DANIDANI

nodejs에서 작성한 express 애플리케이션을 git에 올리면 트리거를 이용해 jenkins에서 자동 빌드가 되고 nodejs에서 작성한 테스트 코드가 실행됩니다.

빌드에 성공하고 테스트 코드도 모두 통과가 되면 AWS elastic beanstalk에 자동 배포를 해주는 ci/cd 를 구축해봅니다.

 


Jenkins 설치

(1) on MacOS

brew install jenkins-lts

(2) on Linux

sudo wget -O /etc/yum.repos.d/jenkins.repo <https://pkg.jenkins.io/redhat-stable/jenkins.repo> 
sudo rpm --import <https://pkg.jenkins.io/redhat-stable/jenkins.io.key> 
sudo yum install jenkins

(3) 그 외 다른 OS는 사이트 참고

Jenkins download and deployment

 

Jenkins 시작

(1) on MacOS

brew services start jenkins-lts

(2) on Linux

sudo service jenkins start
  •  
  • 재시작
sudo service jenkins restart

 

  • 중지
sudo service jenkins stop

 


‼️오류 해결 > 실행 시 java 어쩌고 저쩌고 에러날때 해결 법 ‼️

오류코드

SEVERE: Running with Java class version 51, which is older than the Minimum required version 52. See <https://jenkins.io/redirect/java-support/> 
java.lang.UnsupportedClassVersionError: 51.0 
        at Main.verifyJavaVersion(Main.java:182) 
        at Main.main(Main.java:142)

해결코드

rpm -aq | grep -i jdk 
sudo yum remove (현재 자바 버전) 
sudo yum install java-1.8.0-openjdk-devel

 

브라우저에 localhost:8080 입력 후 접속!

 

터미널에서 Administrator password 확인하기

(localhost:8080에서 빨간글씨 복붙)

cat /Users/daeun/.jenkins/secrets/initialAdminPassword

 

접속 후 install suggested plugins 클릭

 

계정 생성 or skip 해도 됨!

추가로 다운받을 플러그인

  • NodeJS Plugin
  • Test Results Analyzer Plugin (테스트 코드 리포트가 필요한 경우)
  • xUnit plugin (테스트 코드 리포트가 필요한 경우)
  • Amazon S3 Bucket Credentials Plugin (EB 연결을 위함)
  • AWS Elastic Beanstalk Publisher Plugin (EB 연결을 위함)
  • AWSEB Deployment Plugin (EB 연결을 위함)

 

기본 설정 Global Tool Configuration - git, node 설정

(1) git 설정

(2) node 설정

 

프로젝트 생성 방법

(1) 왼쪽 상단의 새로운 item 클릭

 

(2) item name 입력 후 freestyle project 클릭 후 ok

 

(3) 프로젝트 구성에서 

(3)-1. gitHub project 체크 후 url 입력

 

(3)-2. 소스코드 관리 -git 클릭 후 연결하려는 git 레포지토리 연결 후 credentials add

  • Username - git 닉네임
  • Password - git 비밀번호
  • ID - credentials 식별 id, 아무거나 쳐도 됨
  • Description - 생략가능

 

(3)-3. 빌드 환경 - Provide Node & npm bin/ folder to PATH

(3)-4. 빌드 - execute shell

npm install
npm test

 

여기까지가 jenkins설치와 프로젝트 기본세팅입니다!

세팅 후 build를 눌러 실행이 잘 되는지 테스트해 봅니다.

다음 편에서는 git에서 push를 했을 때 자동으로 빌드를 실행시키는 작업을 해줄 겁니다.

728x90