Jenkins, Maven 설치 및 활용하기

2022. 7. 27. 12:17DevOps/DevOps기초

Jenkins는 CI/CD를 도와주는 유명한 도구중 하나이다. 일종의 컨트롤 타워 역할을 하며, 다양한 플러그인을 가지고 와서 세팅을 한 후 사용할 수 있다. 대부분의 기능은 웹 기반의 콘솔로 이용할 수 있으며, CLI기능도 활용할 수 있다. Maven기능을 활용해 깃과 연동하여 코드 변경을 감지할 수 있으며, 자동화 테스트를 포함한 빌드를 수행할 수 있다. 코딩 표준 준수 여부, 유닛 테스트, 통합 테스트 등과 같은 개발자가 필요로 하는 환경을 구축할 수 있다.

 

실습환경은 AWS EC2위에서 실행한다.

최소 스팩은 아래와 같다.

OS : Linux

instance : T2.micro

SG : 22, 80, 8080-9000, ICMP Open

 

젠킨스를 설치하는 방법은 아래와 같다.

$ sudo su -
==> 먼저 관리자 권한을 부여한다.

# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
==> 젠킨스의 리포지토리를 가져온다.

# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
==> 키값을 가져온다.

# yum install -y fontconfig java-11-openjdk -y
# amazon-linux-extras install -y java-openjdk11
==> jenkins는 java기반이기에 자바를 설치한다.

# yum install -y jenkins
==> 젠킨스를 설치한다.

# systemctl enable --now jenkins
==> 시스템을 사용할 수 있도록 한다.

# cat /var/lib/jenkins/secrets/initialAdminPassword
==> 깃렙과 비슷하게 무작위한 password가 있다. 차후 이것으로 로그인 및 수정을 할 것이다.

이 후 해당아이피 : 8080 포트로 접근을하면 아래와 같은 화면이 나타난다. cat 명령어로 확인한 password를 기입하도록 하자.

가장 먼저 보안을 위해 암호를 수성하도록 하자.

이 후 프로젝트를 하나 생성해 보도록 하자.

아래의 화면은 프로젝트 설치 과정이다. 각종 설정을 할 수 있다.

Build는 일종의 메타데이터를 입력할 수 있는 공간이다. 임시로 하나 생성해 보자.

잘 생성된 것을 확인할 수 있다.

이제 플러그인들을 설치해 보도록 하자. 대쉬보드 => jenkins관리 => 플러그인 관리 순서로 접근하면 된다.

플러그인 뿐만아니라 전역(Global) 도구도 사용할 수 있다.

설치를 희망하는 플러그인을 검색한 후 설치를 진행하면된다. GIT hub를 설치해 보았다. 이때 GIT HUB뿐만 아니라 연관된 라이브러리도 마찬가지로 설치가 된다. 라이브러리 설치가 실패한다고 나타나면 다시 시도해 보면 된다.

이 후 CLI창에서 GIT 을 설치한 후 Global Tool Configuration에 접근해, Jenkins 전역에 영향을 주도록 하자. git을 설치하지 않은 상태에서 Global Tool Configuration에 접근하면 왼쪽과 같은 애러가 나타난다.

Git Hub를 위한 간이 프로젝트를 생성하고 설정하도록 하자. 특별히 추가할 것은 없으며 소스 코드 관리 => git부분에 소스 코드를 하나 기입하도록 하자. 이 후 지금 빌드 버튼을 클릭하면 잘 실행되는것을 볼 수 있다.

하나의 경로가 나타나는데 실제로 CLI로 접근을 하게 된다면, 이 설정이 잘 이루어져 있는것을 확인할 수 있다.

이제 apache에서 만든 빌드툴인 Maven을 설치하고, Jenkins와 연동해 보도록 하자. 공식홈페이지는 아래와 같다.

https://maven.apache.org/download.cgi

==> 다운로드

 

Maven – Download Apache Maven

Downloading Apache Maven 3.8.6 Apache Maven 3.8.6 is the latest release and recommended version for all users. The currently selected download mirror is https://dlcdn.apache.org/. If you encounter a problem with this mirror, please select another mirror. I

maven.apache.org

https://maven.apache.org/install.html

==> 인스톨

 

Maven – Installing Apache Maven

Installing Apache Maven <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this f

maven.apache.org

설치는 CLI에서 아래의 명령어를 따라 가면 된다.

# cd /opt
==> 특정 폴더에서 아카이브를 사용하도록 하자.
# wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz
==> gz(압축)된 tar파일을 가져온다.
# tar -xvzf apache-maven-3.8.6-bin.tar.gz
==> xvzf를 사용해서 gz파일의 압축을 풀고, 아카이브를 푼다.
# mv apache-maven-3.8.6 maven
==> 압축이 풀린 폴더의 이름을 maven이라고 간략화 한다.

# ls maven/bin/
==> bin 폴더 내부의 mvn이 있는지 확인한다. 이 파일을 통해서 maven이 실행된다.

# find / -name java-11*
==> java11버전을 찾는다. 보통 경로는 /usr/lib/jvm/ 일 것이다.
# cd ~
# vi .bash_profile
==> java11의 경로설정을 위한 값이다.

if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
M2_HOME=/opt/maven
M2=/opt/maven/bin
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.amzn2.0.3.x86_64
# User specific environment and startup programs

PATH=$PATH:$HOME/bin:$JAVA_HOME:$M2_HOME:$M2

export PATH

# source .bash_profile
# echo $PATH
==> 경로가 잘 지정되었는지 확인한다.
# mvn -v
==> 메이븐이 실제로 실행되는지 버전확인을 통해 확인

이 후 GUI에서 Plugin Manager과 Global Tool Configuration에서 마저 세팅을 하도록 하자.

 

이제 Item을 만들때 Maven파일이 있는것을 확인할 수 있다.

프로젝트를 생성할때 Git에서 소스코드를 받아온 후, Maven이 Java를 활용해서 실행해 보도록하자.

잘 되는것을 확인할 수 있다.

'DevOps > DevOps기초' 카테고리의 다른 글

GCP를 활용한 GIT LAB생성  (0) 2022.07.28
Jenkins - Tomcat 연동하기  (0) 2022.07.27
tomact 설치 및 활용  (0) 2022.07.27
DevOps와 DevOps 엔지니어의 차이는 뭘까?  (0) 2021.09.05
DevOps란???  (0) 2021.09.02