AWS CodeBuild는 완전관리형 빌드 서비스입니다. 소스 코드의 위치를 지정하고 빌드 설정을 선택하기만 하면, CodeBuild가 코드를 컴파일하고, 테스트하며, 패키징하기 위한 빌드 스크립트를 실행합니다. 프로비저닝하고 확장할 서버나 설치, 구성 및 운영할 소프트웨어가 없습니다.

이제 AWS CodeBuild는 누구나 사용 가능

무료로 AWS CodeBuild 사용해 보기

AWS 프리 티어는 AWS CodeBuild와 함께 매월 100 빌드 분의 build.general1.small을 포함합니다.

AWS 프리 티어 세부 정보 보기 »

빌드 및 테스트

AWS CodeBuild는 작업을 완료하는 데 필요한 운영 체제, 프로그래밍 언어 런타임 및 빌드 도구(예: Apache Maven, Gradle, npm)가 포함된 미리 구성된 빌드 환경에서 빌드를 실행합니다. 사용자는 소스 코드의 위치를 지정하고, 사용할 빌드 환경, 빌드 동안 실행할 빌드 명령 등 빌드용 설정을 선택하기만 하면 됩니다. AWS CodeBuild는 코드를 실행하고 아티팩트를 Amazon S3 버킷에 저장합니다. 또는 사용자가 빌드 명령을 사용해 이를 아티팩트 리포지토리에 업로드할 수도 있습니다. AWS CodePipeline, AWS Management Console, AWS CLI 또는 SDK를 사용하여 빌드 프로젝트를 생성, 관리 및 시작할 수 있습니다.

미리 구성된 빌드 환경

AWS CodeBuild는 Java, Python, Node.js, Ruby, Go, Android 및 Docker용 빌드 환경을 제공합니다.

미리 구성된 빌드 환경의 전체 목록은 여기를 참조하십시오.

빌드 환경 사용자 지정

AWS CodeBuild에서 사용하도록 자체 빌드 환경을 가져올 수 있습니다. 빌드용 런타임과 도구를 Docker 이미지로 패키징하고 이를 퍼블릭 Docker Hub 리포지토리 또는 Amazon EC2 Container Registry(ECR)로 업로드할 수 있습니다. 새로운 빌드 프로젝트를 생성할 때 Docker 이미지의 위치를 지정할 수 있으며 CodeBuild는 이 이미지를 가져와서 빌드 프로젝트 구성으로 사용합니다.


구성 가능한 설정

빌드 명령 지정
빌드 도구 패키지 설치, 단위 테스트 수행, 코드 패키징 등 AWS CodeBuild가 수행할 특정 명령을 정의할 수 있습니다. 빌드 사양은 YAML 파일로 빌드의 각 단계에서 실행할 명령과 기타 설정을 선택할 수 있습니다. CodeBuild에서는 Apache Maven, Gradle 또는 npm을 사용한 빌드와 같은 일반적인 시나리오를 위한 샘플 빌드 사양 파일을 통해 신속하게 시작할 수 있습니다.

빌드 사양 샘플 파일은 여기를 참조하십시오.

컴퓨팅 유형 선택
개발 요건에 가장 적합한 컴퓨팅 유형을 선택할 수 있습니다. CPU와 메모리 용량에 따라 다른 3가지 수준의 컴퓨팅 파워 중에서 선택할 수 있습니다. 빌드를 좀 더 빠르게 완료하려면 더 높은 CPU 및 메모리 컴퓨팅을 선택하고 아니면 빌드를 완료하는 데 필요한 최소한의 CPU와 메모리 수준을 선택할 수 있습니다.

소스 통합 선택
AWS CodeBuild를 사용해 몇 가지 방법으로 빌드를 시작할 수 있습니다. 예를 들어 AWS CodeCommit, GitHub 또는 Amazon S3에 연결할 후에 CodeBuild에서 빌드를 시작할 수 있습니다. 또한, CodeBuild와 소스 리포지토리를 AWS CodePipeline과 연결하여 변경 사항을 커밋할 때마다 빌드를 자동으로 시작하도록 할 수 있습니다.


지속적 통합 및 전달 워크플로

AWS CodeBuild의 온디맨드 컴퓨팅 및 사용량에 따라 지불하는 모델을 사용하면 코드를 좀 더 자주 빌드하고 통합할 수 있으므로 개발 프로세스 초기 단계 즉 쉽게 수정할 수 있을 때 버그를 발견하고 수정하는 데 도움이 됩니다. 소스 통합, 빌드 명령 또는 Jenkins 통합을 사용하여 CodeBuild를 기존 지속적 통합지속적 전달(CI/CD) 워크플로와 통합할 수 있습니다. 또한, CodeBuild는 CI/CD를 적용하는 데 도움이 되는 AWS 코드 서비스 제품군에 속합니다. CodeBuild를 AWS CodePipeline에 통합하면 변경 사항을 소스 리포지토리에 커밋할 때마다 CodeBuild의 코드가 자동으로 빌드 및 테스트됩니다. 이 CI 워크플로를 생성하기 위해서는 AWS CodePipeline 마법사를 사용해 소스 리포지토리에 연결한 다음 CodeBuild를 빌드 공급자로 선택하면 됩니다.

CodeBuild가 빌드를 완료한 후 시작되는 타사 로드 또는 사용자 인터페이스 테스트 도구(예: BlazeMeter, Ghost Inspector)를 통합함으로써 CodePipeline의 지속적 통합 워크플로를 지속적 전달로 손쉽게 확장할 수 있습니다. 그런 다음 AWS CodeDeployAWS Elastic Beanstalk와 같이 AWS CodePipeline과 통합된 서비스를 사용하여 인스턴스 또는 온프레미스 서버로 배포할 수 있습니다.

AWS CodePipeline 및 AWS CodeBuild
AWS CodePipeline 및 AWS CodeBuild

AWS CodePipeline 스크린샷. 이 파이프라인은 AWS CodeCommit에서 소스 코드를 가져와서, AWS CodeBuild에서 코드를 빌드하고, AWS CodeDeploy로 코드를 배포합니다.

AWS CodePipeline과 함께 AWS CodeBuild 사용
(확대하려면 클릭)


보안 및 권한

빌드 아티팩트는 고객별 키를 사용해 암호화되며 이 키는 AWS Key Management Service(KMS)에서 관리합니다. AWS CodeBuild는 AWS Identity and Access Management와 통합되므로 빌드에 액세스하는 사용자와 AWS 리소스에 대해 세분화된 제어를 설정할 수 있습니다.


모니터링

AWS Management Console, AWS CLI, SDK 및 API를 사용해 빌드에 관한 상세한 정보를 볼 수 있습니다. AWS CodeBuild는 빌드 시작 시간과 종료 시간, 빌드 상태, 커밋 ID 및 브랜치 등과 같은 정보를 표시합니다. 또한, CodeBuild는 빌드 로그를 Amazon CloudWatch Logs로 스트리밍합니다.

AWS CodeBuild
AWS CodeBuild

(확대하려면 클릭)