클라우드/프로젝트

[CD/CD] 클라우드 기반 CI/CD 파이프라인 구축 -1

Jay0921 2025. 4. 13. 15:28

클라우드 기반의 CI/CD 파이프라인 직접 구성을 통해 이해를 하기 위해 프로젝트를 진행

 

단계는 4단계로 진행할 예정이다.

 

1. Code 

 - 로컬 PC에서 수행 

2. Build

 - GitLab에서 수행

3. Test

 - GitLab runner에서 수행

4. Release

 - 로깅 및 모니터링

 

구성 방식은 아래와 같다

 

1단계 PC(개발자 PC)에서 코드생성 및 셀프 취약점 점검 수행, Gitlab으로 Push

2단계 Push한 코드를 자동스크립트를 통해 Gitlab에서 자동 빌드

3단계 별도로 구축된 원격지 스테이징 서버에 별도의 Gitlab runner라는 별도의 모듈을 설치하여 데몬 운영

 - 이를 통해 2단계에서 빌드된 결과물을 다운로드하고 컨테이너 이미지 생성 및 전체적인 취약점 점검 수행을 목표

4단계 취약점이 제거된 배포 이미지 운영

 


설치 및 환경 설정

1. OpneJDK 설치

다운로드 : https://jdk.java.net/archive/

 

Archived OpenJDK GA Releases

Archived OpenJDK General-Availability Releases This page is an archive of previously released builds of the JDK licensed under the GNU General Public License, version 2, with Classpath Exception. WARNING: These older versions of the JDK are provided to he

jdk.java.net

 

 

Macbook을 사용하고 있기 때문에 macOS용 JDK를 다운로드 버전 23.0.2 -> 버전 문제로 11.02로 다시 다운로드

 

2. Maven 설치

- Maven는 프로젝트 소스 코드 빌드툴이며, 자바개발환경에서 과거에는 Ant, 현재는 Maven or Gradle이 사용된다

다운로드 : https://maven.apache.org/download.cgi

Binary tar.gz.archive 파일을 다운로드 3.9.9 버전

 

3. Git 설치

기존의 설치된 Git이 있기 때문에 이 과정은 스킵한다

git --version 명령어로 버전을 확인할 수 있다.

버전 2.39.5

 

4. IntelliJ(개발툴) 설치

- 젯브레인에서 개발한 JAVA 개발을 위한 툴

다운로드 : https://www.jetbrains.com/ko-kr/idea/download/download-thanks.html?platform=mac

 

 

IntelliJ IDEA를 다운로드해 주셔서 감사합니다!

 

www.jetbrains.com

 

 

[CD/CD] 클라우드 기반 CI/CD 파이프라인 구축 -1

클라우드 기반의 CI/CD 파이프라인 직접 구성을 통해 이해를 하기 위해 프로젝트를 진행 단계는 4단계로 진행할 예정이다. 1. Code  - 로컬 PC에서 수행 2. Build - GitLab에서 수행3. Test - GitLab runner

kjk1128.tistory.com

 

프리티어로 30일 동안 IntelliJ의 모든 기능을 사용할 수 있다. 

 

 

 

1단계 : 개발단계(Code)

Gitlab으로 프로젝트 업로드 하는 과정을 진행

 

소스코드 : https://gitlab.com/aackc/webgoat

 

Charlie Choi / webgoat · GitLab

GitLab.com

gitlab.com

 

 

mvn clean install -DskipTests  로 빌드 시작 

JDK 버전 수정 후 정상적으로 적용 확인 

 

 

빌드 완료 후 webgoat-server/target에 존재하는 빌드 결과물 실행

 

 

실행 후 localhost:8080/WebGoat 로 접속하면 아래와 같은 로그인 화면이 나타남

 

git 을 통해 webgoat 소스코드 불러오기 - 빌드 - 실행 후 결과 확인까지 완료 

다음 글에서는 intelliJ 개발툴에 소스코드 취약점 점검 툴을 설치하여 취약점 점검을 진행할 예정이다. 

 

 

 


진행 중 에러 사항

 

- JDK 버전이 맞지 않아 버전 다운 진행함 23 -> 11

- MacOS에서 진행하다보니 JDK 11 버전을 실행하기 위해서 [개인정보 보호 및 보안] 설정이 필요함 (프로그램 허용)

 

Maven 빌드 과정 중 오류가 발생하였으나 JDK 버전 변경 후 별도의 설정 없이 진행 완료