AWS CI/CD: CodePipeline 기본 설정 (1편)

2023. 10. 29. 15:03·AWS/CodePipeline, CICD
반응형

CodePipeline 시리즈는 지금까지 열심히 만든 ECR, ECS를 활용하여 CI/CD를 구현해 보는 시리즈이다.

AWS CodePipeline
AWS CodePipeline

CodePipeline으로 CI/CD를 구축하는 과정에서 많은 우여곡절이 있었지만 이를 모두 순서대로 기록하기에 글을 다 읽어보면서 필요한 부분만 따라하고 정보를 가져갔으면 좋겠다. 사전사항으로는 ECR을 생성하고 ECS 서비스까지 한번 성공적으로 기동시킨다음 CodePipeline을 만드는 것을 추천한다.

 

ECR 생성하기

2023.10.27 - [AWS] - AWS ECR로 Docker 이미지 관리하기: 완벽 가이드

 

AWS ECR로 Docker 이미지 관리하기: 완벽 가이드

이번 포스트에서는 ECS를 사용하기 전에 꼭 필요한 Docker 이미지를 관리해주는 DockerHub의 AWS버전인 ECR(Elastic Container Registry)를 생성하는 법에 대해서 설명한다. 1. ECR 생성하기 1-1. ECR생성페이지 이

curiousjinan.tistory.com

 

ECS 생성하기

2023.10.28 - [AWS] - AWS ALB를 적용시킨 ECS 세팅: 실전 가이드

 

AWS ALB를 적용시킨 ECS 세팅: 실전 가이드

이번 포스트에서는 저번에 만든 ALB과 더 이전에 만들어놓은 ECR을 적용시켜서 ECS를 세팅하여 배포를 해보도록 하자 세팅 순서는 ECS 클러스터 -> 태스크 정의 -> 서비스 생성이다. 중간중간 따라오

curiousjinan.tistory.com

 


 

1. CodePipeline 대시보드 접속


1-1. AWS에서 CodePipeline을 검색해서 들어간다.

CodePipeline

  • 들어오게 된다면 아래와 같은 모양의 화면이 나올것이다. 여기서 우측의 "파이프라인 생성" 버튼을 누른다.

CodePipeline 대시보드
CodePipeline 대시보드

  • 그럼 파이프라인을 생성하는 창으로 이동할텐데 Step은 아래와 같이 5단계로 나뉘어 진다.

파이프라인 step
파이프라인 step

 


 

2. Step1: 파이프라인 설정 선택


2-1. Step1 파이프라인 설정 선택

  • 여기서는 파이프라인을 식별할 이름을 작성하고 유형은 V2를 고른다.(버전을 의미하는데 2가 최신 버전이다.)
  • 역할 이름은 파이프라인 이름을 작성하면 알아서 만들어준다. (이 역할이 추후 IAM에 등록되는 역할이다.)

Step1. 파이프라인 설정 선택하기
Step1. 파이프라인 설정 선택하기

 

  • 하단의 변수는 그대로 둔다.

변수 설정
변수 설정

 

  • 고급 설정은 클릭해서 "아티팩트 스토어"만 한번 확인을 해준다. (여기서 S3를 설정한다.) 이후 "다음" 버튼을 누른다.

고급 설정
고급 설정

 


 

3. Step2: 소스 스테이지 추가


3-1. 소스 공급자 선택하기

  • 여기서는 GitHub를 사용할 것이므로 GitHub(버전2)를 선택한다. 1과2중에서 2가 권장된다. 선택 후 "다음" 버튼을 누른다.

소스 스테이지 추가
소스 스테이지 추가

 

  • GitHub를 선택하면 아래와 같이 "연결"이라는 부분이 생긴다. 우측의 "GitHub에 연결" 버튼을 누른다.

소스에서 GitHub 연결
소스에서 GitHub 연결

 

3-2. GitHub에 연결하기

  • 아래와 같이 "연결 생성" 이라는 팝업창이 나올것이다. 여기에 이름을 작성하고 "GitHub에 연결" 버튼을 누른다.

연결 생성
연결 생성

 

  • 연결이 처음이라면 아래와 같이 AWS 연결 페이지가 나올것이고 여기서 Authorize AWS Connector for GitHub를 누른다.

Authorize AWS Connector for GitHub
Authorize AWS Connector for GitHub

 

  • 다음으로 Gihubu에 연결하는 창으로 이동한다. 여기서 우측의 “새 앱 설치” 버튼을 클릭한다.

GitHub에 연결
GitHub에 연결

 

  • 이제 여기서 Gihub 계정에 연결해 준다. (계정을 선택하면 된다.)

GItHub 연결
GItHub 연결

 

  • 계정을 선택했으면 다음창으로 이동할텐데 여기서 "AWS Connector for GitHub"를 “Install” 해준다.

Install AWS Connector for GitHub
Install AWS Connector for GitHub

 

  • 이제 다시 기존의 연결하는 창으로 이동될것인데 아까 만든 앱이 자동으로 선택되어 있을것이다. 이제 여기서 하단의 "연결" 버튼을 누른다.

GitHub에 연결창 완성
GitHub에 연결창 완성

 

  • 위에서 "연결" 버튼을 눌렀다면 아래와 같이 기존의 Step1 창으로 이동하면서  GitHub가 선택되어있을것이다.

github connect
github connect

 

3-3. 리포지토리 선택하기

  • 이제 아래로 내려가보면 "리포지토리 이름"이 있을것이고 선택해서 CI/CD하기를 원하는 리포지토리를 선택한다.

리포지토리 이름 선택
리포지토리 이름 선택

 

3-4. 파이프라인 트리거 선택하기

  • 나는 여기서 "브랜치 내 푸시"를 선택했다. 그리고 하단의 브랜치 이름을 통해 어떤 브랜치에 푸시가 되면 트리거가 동작할지 선택해 준다.(편리하게도 클릭하면 알아서 연결된 브랜치 목록이 나온다.)

트리거, 브랜치 선택
트리거, 브랜치 선택

 

3-5. 출력 아티팩트 형식 선택하기

  • 마지막으로 출력 아티팩트 형식을 선택하고 "다음"버튼을 눌러서 Step2를 마무리한다.

아티팩트 형식 설정
아티팩트 형식 설정

 

 

다음 포스트에서는 이어서 Step3 빌드 프로젝트 구성에 해보자 여기까지는 매우 간단히 따라오고 별 문제도 없을것이다. 앞으로 험난한 설정들이 기다린다.

 

 


 

 

2023.10.29 - [AWS] - AWS CI/CD: CodePipeline 빌드 스테이지 추가 (2편)

 

AWS CI/CD: CodePipeline 빌드 스테이지 추가 (2편)

지난번 Step2에 이어서 빌드 스테이지를 추가한다. 1. Step3. 빌드 스테이지 추가 1-1. Step3는 빌드 스테이지 추가이다. 아래와 같은 화면이 나올것이다. 1-2. 빌드 공급자 선택 Jenkins가 아니라 CodeBuild

curiousjinan.tistory.com

 

반응형

'AWS > CodePipeline, CICD' 카테고리의 다른 글

AWS CI/CD: CodePipeline 세 번째 빌드 오류 해결 (6편)  (1) 2023.10.30
AWS CI/CD: CodePipeline 두 번째 빌드 오류 해결 (5편)  (1) 2023.10.30
AWS CI/CD: CodePipeline 첫 번째 빌드 오류 해결 (4편)  (2) 2023.10.29
AWS CI/CD: CodePipeline 배포 및 검토 (3편)  (1) 2023.10.29
AWS CI/CD: CodePipeline 빌드 스테이지 추가 (2편)  (2) 2023.10.29
'AWS/CodePipeline, CICD' 카테고리의 다른 글
  • AWS CI/CD: CodePipeline 두 번째 빌드 오류 해결 (5편)
  • AWS CI/CD: CodePipeline 첫 번째 빌드 오류 해결 (4편)
  • AWS CI/CD: CodePipeline 배포 및 검토 (3편)
  • AWS CI/CD: CodePipeline 빌드 스테이지 추가 (2편)
Stark97
Stark97
문의사항 또는 커피챗 요청은 링크드인 메신저를 보내주세요! : https://www.linkedin.com/in/writedev/
  • Stark97
    오늘도 개발중입니다
    Stark97
  • 전체
    오늘
    어제
    • 분류 전체보기 (240)
      • 개발지식 (20)
        • 스레드(Thread) (8)
        • WEB, DB, GIT (3)
        • 디자인패턴 (8)
      • JAVA (21)
      • Spring (88)
        • Spring 기초 지식 (35)
        • Spring 설정 (6)
        • JPA (7)
        • Spring Security (17)
        • Spring에서 Java 활용하기 (8)
        • 테스트 코드 (15)
      • 아키텍처 (5)
      • MSA (14)
      • DDD (7)
      • gRPC (9)
      • Apache Kafka (18)
      • DevOps (23)
        • nGrinder (4)
        • Docker (1)
        • k8s (1)
        • 테라폼(Terraform) (12)
      • AWS (32)
        • ECS, ECR (14)
        • EC2 (2)
        • CodePipeline, CICD (8)
        • SNS, SQS (5)
        • RDS (2)
      • notion&obsidian (3)
  • 링크

    • notion기록
    • 깃허브
    • 링크드인
  • hELLO· Designed By정상우.v4.10.0
Stark97
AWS CI/CD: CodePipeline 기본 설정 (1편)
상단으로

티스토리툴바