AWS 시작하기

지속적 전달 파이프라인 생성

git 리포지토리 설정, 샘플 웹 앱 배포 및 지속적 전달 파이프라인 생성

모듈 3: 빌드 프로젝트 생성

이 모듈에서는 AWS CodeBuild를 사용하여 애플리케이션 빌드 프로세스를 구성하고 실행합니다.

소개

이 모듈에서는 AWS CodeBuild를 사용하여 이전에 GitHub 리포지토리에 저장한 소스 코드를 작성합니다. AWS CodeBuild는 소스 코드를 컴파일하는 단계부터 테스트 실행 후 소프트웨어 패키지를 개발하여 배포하는 단계까지 마칠 수 있는 완전관리형의 지속적 통합 서비스입니다.

배우게 될 내용

  • AWS CodeBuild를 사용하여 빌드 프로젝트 생성
  • GitHub를 빌드 프로젝트의 소스 공급자로 설정
  • AWS CodeBuild에서 빌드 실행

주요 개념

빌드 프로세스는 소스 코드 파일을 실행 가능한 소프트웨어 아티팩트로 변환하는 프로세스입니다. 이 프로세스에는 소스 코드 컴파일, 테스트 실행 및 배포용으로 소프트웨어 패키징과 같은 단계가 포함될 수 있습니다.

지속적 통합은 자동 빌드 및 테스트가 수행된 후, 변경 사항을 호스팅 리포지토리에 정기적으로 푸시하는 소프트웨어 개발 방식입니다.

빌드 환경은 운영 체제, 프로그래밍 언어 런타임 및 CodeBuild에서 빌드를 실행하는 데 사용되는 도구의 조합입니다.

Buildspec은 CodeBuild에서 빌드를 실행할 때 사용하는 빌드 명령 및 관련 설정(YAML 형식)의 컬렉션입니다.

빌드 프로젝트는 소스 코드를 가져올 위치, 사용할 빌드 환경, 실행할 빌드 명령 및 빌드 출력을 저장할 위치와 같은 빌드 실행 방법에 대한 정보를 포함합니다.

OAuth는 보안 인증을 위한 오픈 프로토콜입니다. OAuth는 GitHub 계정을 서드 파티 애플리케이션(예: AWS CodeBuild)에 연결하는 데 사용됩니다.

 완료 시간

5분

 사용되는 서비스

구현

  • AWS CodeBuild 프로젝트 구성
    1. 새 브라우저 탭에서 AWS CodeBuild 콘솔을 엽니다.
    2. 주황색 [프로젝트 생성(Create project)] 버튼을 클릭합니다.
    3. [프로젝트 이름(Project name)] 필드에 Build-DevOpsGettingStarted를 입력합니다.
    4. [소스 공급자(Source provider)] 드롭다운 메뉴에서 [GitHub]를 선택합니다.
    5. [OAuth를 사용하여 연결(Connect using OAuth)] 라디오 버튼이 선택되어 있는지 눈으로 확인합니다.
    6. 흰색 [GitHub에 연결(Connect to GitHub)] 버튼을 클릭합니다. 이 버튼을 클릭하면 새 브라우저 탭이 열리고 AWS CodeBuild에 GitHub 리포지토리에 대한 액세스 권한을 부여하라는 내용의 메시지가 표시됩니다.
    7. 녹색 [aws-codesuite 인증(Authorize aws-codesuite)] 버튼을 클릭합니다.
    8. GitHub 암호를 입력합니다.
    9. 주황색 [확인(Confirm)] 버튼을 클릭합니다.
    10. [내 GitHub 계정의 리포지토리(Repository in my GitHub account)]를 선택합니다.
    11. 검색 필드에 aws-elastic-beanstalk-express-js-sample을 입력합니다.
    12. 모듈 1에서 포크한 리포지토리를 클릭합니다. 리포지토리를 클릭하면 다음과 같은 화면이 표시됩니다.
    Module 3 - CodeBuild_Source

    13. [관리형 이미지(Managed Image)]가 선택되어 있는지 눈으로 확인합니다.

    14. [운영 체제(Operating system)] 드롭다운 메뉴에서 [Amazon Linux 2]를 선택합니다.

    15. [런타임(Runtime(s))] 드롭다운 메뉴에서 [표준(Standard)]을 선택합니다.

    16. [이미지(Image)] 드롭다운 메뉴에서 aws/codebuild/amazonlinux2-x86_64-standard:3.0을 선택합니다.

    17. [이미지 버전(Image version)]에 대해 [이 런타임 버전에 항상 최신 이미지 사용(Always use the latest image for this runtime version)]이 선택되어 있는지 눈으로 확인합니다.

    18. [환경 유형(Environment type)]으로 [Linux]가 선택되어 있는지 눈으로 확인합니다.

    19. [새 서비스 역할(New service role)]이 선택되어 있는지 눈으로 확인합니다.

  • 프로젝트에 대한 Buildspec 파일 생성
    1. [빌드 명령 삽입(Insert build commands)]을 선택합니다.
    2. [편집기로 전환(Switch to editor)]을 클릭합니다.
    3. 편집기에서 아래의 코드로 Buildspec을 바꿉니다.
    version: 0.2
    phases:
        build:
            commands:
                - npm i --save
    artifacts:
        files:
            - '**/*'

    4. 주황색 [빌드 프로젝트 생성(Create build project)] 버튼을 클릭합니다. 프로젝트에 대한 대시보드가 표시됩니다.

  • CodeBuild 프로젝트 테스트
    1. 주황색 [빌드 시작(Start build)] 버튼을 클릭합니다. 빌드 프로세스를 구성하는 페이지가 로드됩니다.
    2. 로드된 페이지에 올바른 GitHub 리포지토리가 참조되는지 확인합니다.
    3. 주황색 [빌드 시작(Start build)] 버튼을 클릭합니다.
    4. 빌드가 완료될 때까지 기다립니다. 기다리는 동안 페이지 상단에 [빌드 시작됨(Build started)]이라는 메시지가 있는 녹색 표시줄이 표시되고 [빌드 로그(Build log)] 아래에 빌드 진행률이 표시되며 몇 분이 지나면 빌드가 작동했음을 확인하는 녹색 확인 표시와 [성공(Succeeded)] 메시지가 표시됩니다.

애플리케이션 아키텍처

현재 아키텍처는 다음과 같습니다.

Module-3

GitHub 리포지토리의 Hello World! 웹 앱에 대한 빌드 프로세스를 실행할 빌드 프로젝트가 AWS CodeBuild에 생성되었습니다. 이 빌드 프로젝트는 다음 모듈에서 생성할 지속적 잔달 파이프라인의 빌드 단계로 사용됩니다.

이 모듈이 유용했습니까?

감사합니다.
좋아하는 사항을 알려주세요.
닫기
실망을 드려 죄송합니다.
오래되었거나 혼란스럽거나 부정확한 사항이 있습니까? 피드백을 제공하여 이 자습서를 개선할 수 있도록 도와주십시오.
닫기

전달 파이프라인 생성