Google Cloud 빌드팩은 애플리케이션 소스 코드를 가져와 프로덕션에 즉시 사용 가능한 컨테이너 이미지로 변환하는 오픈소스 프로젝트입니다. Google Cloud 에서 게시하는 빌드팩은 Cloud Native Buildpack 사양을 구현하며 Google Cloud에 배포할 수 있는 컨테이너를 빌드하고 구성하는 데 도움이 되도록 설계되었습니다.
빌드팩은 일반적으로 언어 구성요소, 도구 모음 또는 Python, pip 또는 웹 서버와 같은 앱 구성요소를 담당합니다.
빌드팩은 빌더라는 컬렉션으로 그룹화되어, 프로젝트 소스 코드를 분석하고, 빌드 계획을 만들고, 배포할 준비가 된 컨테이너 이미지를 생성할 수 있습니다.
빌드팩으로 컨테이너화
Google Cloud 서버리스 제품에서 애플리케이션(서비스) 또는 함수를 배포하고 제공할 때 빌드팩을 사용하여 코드를 실행 가능한 컨테이너로 패키징합니다.
Cloud Run에서는 사전 빌드된 컨테이너를 배포하거나 소스 코드를 배포하여 Cloud Run에서 컨테이너 빌드를 관리하도록 할 수 있습니다. Cloud Run 함수 및 App Engine에서는 컨테이너화 프로세스가 완전히 관리됩니다. 즉, 소스 코드를 배포하면 모든 컨테이너 이미지 패키징 및 변환이 자동으로 실행됩니다.
각 컨테이너 이미지는 소스 코드, 시스템 및 라이브러리 종속 항목, 구성 데이터, 정적 애셋을 비롯하여 배포를 실행하는 데 필요한 모든 구성요소로 빌드됩니다. 기본적으로 Google Cloud 서버리스 제품은 배포 파이프라인을 위한 Cloud Build와 컨테이너 이미지 스토리지 및 관리를 위한 Container Registry 또는 Artifact Registry를 포함한 동일한 기본 서비스를 사용합니다.
Google Cloud 빌드팩을 사용할 때
빌더 및 빌드팩은 빌드 프로세스를 처리하고 실행 가능한 컨테이너 이미지를 만들도록 사전 구성됩니다.
애플리케이션을 시작하는 표준 방법을 제외하는 프로그래밍 언어의 경우 Procfile을 사용하여 컨테이너가 시작될 때 호출할 프로세스를 정의할 수 있습니다.
Procfile은 모든 빌드팩 유형의 기본 시작 프로세스를 재정의하는 데 사용할 수 있지만 Python을 비롯한 일부 시스템에서는 필수입니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-03-26(UTC)"],[[["Google Cloud's buildpacks are an open-source project that transforms application source code into production-ready container images, based on the Cloud Native Buildpack specification."],["Buildpacks are responsible for language components or tools, and are grouped into builders that analyze code and generate deployable container images."],["Google Cloud Serverless products use buildpacks to package code into runnable containers, and the process is fully managed on Cloud Run functions and App Engine."],["Builders and buildpacks are pre-configured to handle the build process and automatically detect the programming language, supporting multiple languages."],["Buildpacks can be used to build both applications/services and functions, and a `Procfile` can define the startup process for containers, being mandatory for some languages like Python."]]],[]]