CodeBuild에서 CodeBuild가 빌드를 실행하는 데 사용하는 컴퓨팅 및 런타임 환경 이미지를 지정할 수 있습니다. 컴퓨팅은 CodeBuild에서 관리하고 유지하는 컴퓨팅 엔진(CPU, 메모리, 운영 체제)을 말합니다. 런타임 환경 이미지는 선택한 컴퓨팅 플랫폼에서 실행되는 컨테이너 이미지이며, 빌드에 필요할 수 있는 추가 도구(예: AWS CLI)가 포함되어 있습니다.
컴퓨팅 모드 정보
CodeBuild는 다음과 같은 컴퓨팅 모드를 제공합니다.
-
EC2
-
AWS Lambda
EC2는 빌드 중에 최적화된 유연성을 제공하고 AWS Lambda은 최적화된 시작 속도를 제공합니다. AWS Lambda에서는 시작 지연 시간이 짧아 더 빠른 빌드를 지원합니다. 또한 AWS Lambda은 자동으로 크기가 조정되므로 빌드가 실행될 때까지 대기하지 않아도 됩니다. 자세한 내용은 AWS Lambda 컴퓨팅에서 빌드 실행 단원을 참조하십시오.
환경 유형 정보
AWS CodeBuild는 EC2 컴퓨팅 모드에 대해 다음의 가용 메모리, vCPU 및 디스크 공간이 있는 빌드 환경을 제공합니다.
컴퓨팅 유형 | 환경 computeType 값 | 환경 유형 값 | 메모리 | vCPU | 디스크 공간 |
---|---|---|---|---|---|
ARM Small ¹ | BUILD_GENERAL1_SMALL |
ARM_CONTAINER |
4GB | 2 | 64GB |
ARM Medium ¹ | BUILD_GENERAL1_MEDIUM |
ARM_CONTAINER |
8GB | 4 | 128GB |
ARM Large ¹ | BUILD_GENERAL1_LARGE |
ARM_CONTAINER |
16 GB | 8 | 128GB |
ARM XLarge ¹ | BUILD_GENERAL1_XLARGE |
ARM_CONTAINER |
64GB | 32 | 256GB |
ARM 2XLarge ¹ | BUILD_GENERAL1_2XLARGE |
ARM_CONTAINER |
96GB | 48 | 824GB |
Linux Small ¹ | BUILD_GENERAL1_SMALL |
LINUX_CONTAINER |
3GB | 2 | 64GB |
Linux Medium ¹ | BUILD_GENERAL1_MEDIUM |
LINUX_CONTAINER |
7GB | 4 | 128GB |
Linux Large ¹ | BUILD_GENERAL1_LARGE |
LINUX_CONTAINER |
15GB | 8 | 128GB |
Linux XLarge ¹ | BUILD_GENERAL1_XLARGE |
LINUX_CONTAINER |
70GB | 36 | 256GB |
Linux 2XLarge | BUILD_GENERAL1_2XLARGE |
LINUX_CONTAINER |
145 GB | 72 | 824 GB(SSD) |
Linux GPU Small | BUILD_GENERAL1_SMALL |
LINUX_GPU_CONTAINER |
16 GB | 4 | 220GB |
Linux GPU Large | BUILD_GENERAL1_LARGE |
LINUX_GPU_CONTAINER |
255 GB | 32 | 50GB |
macOS Medium | BUILD_GENERAL1_MEDIUM |
MAC_ARM |
24GB | 8 | 128GB |
macOS Large | BUILD_GENERAL1_LARGE |
MAC_ARM |
32GB | 12 | 256GB |
Windows Medium ¹ | BUILD_GENERAL1_MEDIUM |
WINDOWS_SERVER_2019_CONTAINER |
7GB | 4 | 128GB |
Windows Large ¹ | BUILD_GENERAL1_LARGE |
WINDOWS_SERVER_2019_CONTAINER |
15GB | 8 | 128GB |
¹ 이 이미지 유형의 최신 버전이 캐시됩니다. 보다 구체적인 버전을 지정하면 CodeBuild는 캐시된 버전 대신 해당 버전을 프로비저닝합니다. 이로 인해 빌드 시간이 길어질 수 있습니다. 예를 들어 캐싱을 사용하려면 aws/codebuild/amazonlinux2-x86_64-standard:5.0-1.0.0
과 같이 보다 세분화된 버전 대신 aws/codebuild/amazonlinux2-x86_64-standard:5.0
을 지정합니다.
AWS CodeBuild는 AWS Lambda 컴퓨팅 모드에 대한 다음의 가용 메모리 및 디스크 공간이 있는 빌드 환경을 제공합니다.
컴퓨팅 유형 | 환경 computeType 값 | 환경 유형 값 | 메모리 | 디스크 공간 |
---|---|---|---|---|
ARM Lambda 1GB | BUILD_LAMBDA_1GB |
ARM_LAMBDA_CONTAINER |
1GB | 10GB |
ARM Lambda 2GB | BUILD_LAMBDA_2GB |
ARM_LAMBDA_CONTAINER |
2GB | 10GB |
ARM Lambda 4GB | BUILD_LAMBDA_4GB |
ARM_LAMBDA_CONTAINER |
4GB | 10GB |
ARM Lambda 8GB | BUILD_LAMBDA_8GB |
ARM_LAMBDA_CONTAINER |
8GB | 10GB |
ARM Lambda 10GB | BUILD_LAMBDA_10GB |
ARM_LAMBDA_CONTAINER |
10GB | 10GB |
Linux Lambda 1GB | BUILD_LAMBDA_1GB |
LINUX_LAMBDA_CONTAINER |
1GB | 10GB |
Linux Lambda 2GB | BUILD_LAMBDA_2GB |
LINUX_LAMBDA_CONTAINER |
2GB | 10GB |
Linux Lambda 4GB | BUILD_LAMBDA_4GB |
LINUX_LAMBDA_CONTAINER |
4GB | 10GB |
Linux Lambda 8GB | BUILD_LAMBDA_8GB |
LINUX_LAMBDA_CONTAINER |
8GB | 10GB |
Linux Lambda 10GB | BUILD_LAMBDA_10GB |
LINUX_LAMBDA_CONTAINER |
10GB | 10GB |
다른 환경 유형을 사용할 때는 캐시된 이미지를 사용하여 빌드 시간을 줄이는 것이 좋습니다.
각 빌드 환경에 대해 나열된 디스크 공간은 CODEBUILD_SRC_DIR
환경 변수로 지정된 디렉터리에서만 사용할 수 있습니다.
컴퓨팅 유형을 선택하려면:
-
CodeBuild 콘솔에 있는 빌드 프로젝트 생성 마법사 또는 빌드 프로젝트 편집 페이지의 환경에서 추가 구성을 확장한 후 컴퓨팅 유형 옵션 중 하나를 선택합니다. 자세한 내용은 빌드 프로젝트 만들기(콘솔) 또는 빌드 프로젝트 설정 변경(콘솔)을 참조하세요.
-
AWS CLI의 경우
environment
객체의computeType
값을 지정하여create-project
또는update-project
명령을 실행합니다. 자세한 내용은 빌드 프로젝트 생성(AWS CLI) 또는 빌드 프로젝트 설정 변경(AWS CLI)을 참조하세요. -
AWS SDK의 경우 대상 프로그래밍 언어에서
CreateProject
또는UpdateProject
작업에 해당하는 작업을environment
객체의computeType
값에 해당하는 값을 지정하여 호출합니다. 자세한 내용은 AWS SDK 및 도구 참조을 참조하세요.
일부 환경 및 컴퓨팅 유형에는 다음과 같은 리전 가용성 제한이 있습니다.
-
컴퓨팅 유형 Linux GPU Small(
LINUX_GPU_CONTAINER
)은 다음 리전에서만 사용할 수 있습니다.-
미국 동부(버지니아 북부)
-
미국 서부(오레곤)
-
아시아 태평양(도쿄)
-
캐나다(중부)
-
유럽(프랑크푸르트)
-
유럽(아일랜드)
-
유럽(런던)
-
-
컴퓨팅 유형 Linux GPU Large(
LINUX_GPU_CONTAINER
)는 다음 리전에서만 사용할 수 있습니다.-
미국 동부(오하이오)
-
미국 동부(버지니아 북부)
-
미국 서부(오레곤)
-
아시아 태평양(서울)
-
아시아 태평양(싱가포르)
-
아시아 태평양(시드니)
-
아시아 태평양(도쿄)
-
캐나다(중부)
-
중국(베이징)
-
중국(닝샤)
-
유럽(프랑크푸르트)
-
유럽(아일랜드)
-
유럽(런던)
-
-
환경 유형
ARM_CONTAINER
는 다음 리전에서만 사용할 수 있습니다.-
미국 동부(오하이오)
-
미국 동부(버지니아 북부)
-
미국 서부(캘리포니아 북부)
-
미국 서부(오레곤)
-
아시아 태평양(홍콩)
-
아시아 태평양(자카르타)
-
아시아 태평양(하이데라바드)
-
아시아 태평양(뭄바이)
-
아시아 태평양(오사카)
-
아시아 태평양(서울)
-
아시아 태평양(싱가포르)
-
아시아 태평양(시드니)
-
아시아 태평양(도쿄)
-
캐나다(중부)
-
중국(베이징)
-
중국(닝샤)
-
유럽(프랑크푸르트)
-
유럽(아일랜드)
-
유럽(런던)
-
유럽(밀라노)
-
유럽(파리)
-
유럽(스페인)
-
유럽(스톡홀름)
-
이스라엘(텔아비브)
-
중동(바레인)
-
중동(UAE)
-
남아메리카(상파울루)
-
-
컴퓨팅 유형
BUILD_GENERAL1_2XLARGE
는 다음 리전에서만 사용할 수 있습니다.-
미국 동부(오하이오)
-
미국 동부(버지니아 북부)
-
미국 서부(캘리포니아 북부)
-
미국 서부(오레곤)
-
아시아 태평양(하이데라바드)
-
아시아 태평양(홍콩)
-
아시아 태평양(자카르타)
-
아시아 태평양(멜버른)
-
아시아 태평양(뭄바이)
-
아시아 태평양(서울)
-
아시아 태평양(싱가포르)
-
아시아 태평양(시드니)
-
아시아 태평양(도쿄)
-
캐나다(중부)
-
중국(베이징)
-
중국(닝샤)
-
유럽(프랑크푸르트)
-
유럽(아일랜드)
-
유럽(런던)
-
유럽(파리)
-
유럽(스페인)
-
유럽(스톡홀름)
-
유럽(취리히)
-
이스라엘(텔아비브)
-
중동(바레인)
-
중동(UAE)
-
남아메리카(상파울루)
-
-
컴퓨팅 모드 AWS Lambda(
ARM_LAMBDA_CONTAINER
및LINUX_LAMBDA_CONTAINER
)은 다음 리전에서만 사용할 수 있습니다.-
미국 동부(버지니아 북부)
-
미국 동부(오하이오)
-
미국 서부(오레곤)
-
아시아 태평양(뭄바이)
-
아시아 태평양(싱가포르)
-
아시아 태평양(시드니)
-
아시아 태평양(도쿄)
-
유럽(프랑크푸르트)
-
유럽(아일랜드)
-
남아메리카(상파울루)
-
-
컴퓨팅 모드
MAC_ARM
은 다음 리전에서만 사용할 수 있습니다.-
미국 동부(버지니아 북부)
-
미국 동부(오하이오)
-
미국 서부(오레곤)
-
아시아 태평양(시드니)
-
유럽(프랑크푸르트)
-
컴퓨팅 유형 BUILD_GENERAL1_2XLARGE
은 압축되지 않은 최대 100GB의 도커 이미지가 지원됩니다.
참고
사용자 지정 빌드 환경 이미지의 경우 CodeBuild는 컴퓨팅 유형에 관계없이 Linux 및 Windows에서 최대 50GB의 도커 이미지를 지원합니다. 빌드 이미지의 크기를 확인하려면 Docker를 사용하여 docker images
명령을 실행합니다.REPOSITORY
:TAG
Amazon EFS를 사용하여 빌드 컨테이너의 더 많은 공간에 액세스할 수 있습니다. 자세한 내용은 AWS CodeBuild에 대한 Amazon Elastic File System 샘플 단원을 참조하십시오. 빌드 중 컨테이너 디스크 공간을 조정하려면 권한을 가진 모드에서 빌드를 실행해야 합니다.
참고
기본적으로 비 VPC 빌드에는 Docker 데몬이 활성화됩니다. VPC 빌드에 Docker 컨테이너를 사용하려면 Docker Docs 웹 사이트의 런타임 권한 및 Linux 기능