새 서비스 또는 기존 서비스에 지속적 배포를 설정하는지 여부에 따라 설정 절차가 약간 달라집니다. 자세히 알아보려면 해당 탭을 클릭하세요.
새 서비스
새 서비스 배포에 설명된 대로 새 서비스를 만들고 서비스 설정 페이지의 소스 저장소에서 지속적으로 새 버전 배포를 선택합니다.
서비스 설정 페이지에서 Cloud Build로 설정을 클릭합니다.
GitHub가 기본 저장소 제공업체입니다. 아직 인증되지 않은 경우 인증을 클릭하고 안내를 따릅니다.
Cloud Build GitHub 앱을 사용하여 저장소를 연결합니다.
다음을 클릭합니다.
빌드 구성 단계의 옵션을 지정합니다.
브랜치 - 트리거를 실행할 때 사용할 소스를 나타냅니다. 여기에 정규식을 입력할 수 있습니다. 일치하는 브랜치가 자동으로 확인되며 입력 아래에 표시됩니다. 정확히 브랜치 하나가 일치하면 트리거가 생성된 후 자동으로 실행됩니다.
빌드 유형
Docker를 사용하여 저장소를 빌드해야 하는 경우 Dockerfile이 포함되어 있으면 Dockerfile을 선택합니다. 소스 위치는 Dockerfile의 위치와 이름을 나타냅니다. 이 디렉터리는 Docker 빌드 컨텍스트로 사용됩니다. 모든 경로는 현재 디렉터리를 기준으로 합니다.
그렇지 않으면 Google Cloud 빌드팩을 선택합니다. 빌드팩 컨텍스트를 사용하여 디렉터리를 지정하고 진입점(선택사항)을 사용하여 서버를 시작할 명령어를 입력합니다. 예를 들면 Python의 경우 gunicorn -p :8080 main:app, 자바의 경우 java -jar target/myjar.jar입니다. 기본 동작을 사용하려면 비워 두세요.
GitHub가 기본 저장소 제공업체입니다. 아직 인증되지 않은 경우 인증을 클릭하고 안내를 따릅니다.
Cloud Build GitHub 앱을 사용하여 저장소를 연결합니다.
다음을 클릭합니다.
빌드 구성 단계의 옵션을 지정합니다.
브랜치 - 트리거를 실행할 때 사용할 소스를 나타냅니다. 여기에 정규식을 입력할 수 있습니다. 일치하는 브랜치가 자동으로 확인되며 입력 아래에 표시됩니다. 정확히 브랜치 하나가 일치하면 트리거가 생성된 후 자동으로 실행됩니다.
빌드 유형
Docker를 사용하여 저장소를 빌드해야 하는 경우 Dockerfile이 포함되어 있으면 Dockerfile을 선택합니다. 소스 위치는 Dockerfile의 위치와 이름을 나타냅니다. 이 디렉터리는 Docker 빌드 컨텍스트로 사용됩니다. 모든 경로는 현재 디렉터리를 기준으로 합니다.
그렇지 않으면 Google Cloud 빌드팩을 선택합니다. 빌드팩 컨텍스트를 사용하여 디렉터리를 지정하고 진입점(선택사항)을 사용하여 서버를 시작할 명령어를 입력합니다. 예를 들면 Python의 경우 gunicorn -p :8080 main:app, 자바의 경우 java -jar target/myjar.jar입니다. 기본 동작을 사용하려면 비워 두세요.
[[["이해하기 쉬움","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-07-24(UTC)"],[],[],null,["# Continuous deployment from Git using Cloud Build\n\nYou can use Cloud Build to automate builds and deployments to\nCloud Run by using [Cloud Build trigger](/build/docs/running-builds/automate-builds)\nto automatically build and deploy your code whenever new commits are pushed to\na given branch of a Git repository. For an example, see the\nquickstart for [creating a template repository and deploying continuously from\ngit](/run/docs/quickstarts/deploy-continuously).\n\nWhen you use a Cloud Build trigger to build containers, the\n[source repository information is displayed](/run/docs/managing/revisions#build-source)\nin the Google Cloud console for your service after you deploy to\nCloud Run.\n\nAlternatively, you can use [Cloud Deploy](/deploy/docs/deploy-app-run) to set up a continuous-delivery\npipeline to deploy Cloud Run services to multiple environments.\n\nBefore you begin\n----------------\n\n- You either have a git repository with a `Dockerfile` or your codebase is written in one of the languages supported by [Google Cloud's buildpacks](/docs/buildpacks/builders).\n-\n\n\n Enable the Cloud Build\n API.\n\n\n [Enable the API](https://console.cloud.google.com/flows/enableapi?apiid=cloudbuild.googleapis.com)\n\n### Required roles\n\n\nTo get the permissions that\nyou need to deploy Cloud Run services from Git using Cloud Build,\n\nask your administrator to grant you the\nfollowing IAM roles on your project:\n\n- [Artifact Registry Administrator](/iam/docs/roles-permissions/artifactregistry#artifactregistry.admin) (`roles/artifactregistry.admin`)\n- [Cloud Build Editor](/iam/docs/roles-permissions/cloudbuild#cloudbuild.builds.editor) (`roles/cloudbuild.builds.editor`)\n- [Cloud Run Developer](/iam/docs/roles-permissions/run#run.developer) (`roles/run.developer`)\n- [Service Account User](/iam/docs/roles-permissions/iam#iam.serviceAccountUser) (`roles/iam.serviceAccountUser`)\n- [Service Usage Admin](/iam/docs/roles-permissions/serviceusage#serviceusage.serviceUsageAdmin) (`roles/serviceusage.serviceUsageAdmin`)\n\n\nThe service account running the build must have the following roles:\n\n- [Cloud Build Service Account](/iam/docs/understanding-roles#cloudbuild.builds.builder) (`roles/cloudbuild.builds.builder`)\n- [Cloud Run Admin](/iam/docs/understanding-roles#run.admin) (`roles/run.admin`)\n- [Service Account User](/iam/docs/understanding-roles#iam.serviceAccountUser) (`roles/iam.serviceAccountUser`)\n\nFor a list of IAM roles and permissions that are associated with\nCloud Run, see\n[Cloud Run IAM roles](/run/docs/reference/iam/roles)\nand [Cloud Run IAM permissions](/run/docs/reference/iam/permissions).\nIf your Cloud Run service interfaces with\nGoogle Cloud APIs, such as Cloud Client Libraries, see the\n[service identity configuration guide](/run/docs/configuring/services/service-identity).\nFor more information about granting roles, see\n[deployment permissions](/run/docs/reference/iam/roles#additional-configuration)\nand [manage access](/iam/docs/granting-changing-revoking-access).\n\nSet up continuous deployment from the Cloud Run user interface\n--------------------------------------------------------------\n\nThe setup procedure varies slightly depending on whether you are setting up\ncontinuous deployment on a new service or on an existing service. Click the\nappropriate tab to learn more. \n\n### New service\n\n1. Create a new service as described in [Deploy a new service](/run/docs/deploying#service),\n making sure you select **Continuously deploy new revisions from a source repository**\n in the *Service settings* page.\n\n2. In the *Service settings* page, click **Set up with Cloud Build**.\n\n3. GitHub is the default repository provider. If you are not yet\n authenticated, click **Authenticate** and follow the instructions.\n Connecting a repository is done using the Cloud Build GitHub app.\n\n4. Click **Next**.\n\n5. Fill the options in Build Configuration step:\n\n - *Branch* - indicates what source should be used when running the trigger. You can put the [regex](https://github.com/google/re2/wiki/Syntax) here. Matched branches are automatically verified: you can see them below the input. Note that if exactly one branch is matched, the trigger will be automatically executed after the creation.\n - *Build Type*\n\n - If your repository should be built using Docker and it contains a\n Dockerfile, select **Dockerfile** . **Source location** indicates the\n location and name of the Dockerfile. This directory will be used as the\n Docker build context. All paths should be relative to the current\n directory.\n\n - Otherwise, select **Google Cloud Buildpacks** . Use\n **Buildpack context** to specify the directory and **Entrypoint**\n (optional) to provide the command to start the server. Example:\n `gunicorn -p :8080 main:app` for Python,\n `java -jar target/myjar.jar` for Java. Leave it blank to use\n [default behavior](/docs/buildpacks/service-specific-configs#google_entrypoint).\n\n6. Click **Save**.\n\n7. Verify the selected settings.\n\n8. Click **Create**.\n\n9. Note that you are redirected to the *Service Details* page, where you can\n track the progress of your Continuous Deployment set up.\n\n10. Once all steps are completed, note additional options:\n\n - Edit Continuous Deployment.\n - Build History.\n - Source details in the [*Revision Details* section](/run/docs/managing/revisions#viewing_revision_details).\n\n### Existing service\n\n1. [Go to Cloud Run](https://console.cloud.google.com/run)\n\n2. Locate the service in the services list, and click it.\n\n3. Click **Set up Continuous Deployment**.\n\n4. GitHub is the default repository provider. If you are not yet\n authenticated, click **Authenticate** and follow the instructions.\n Connecting a repository is done using the Cloud Build GitHub app.\n\n5. Click **Next**.\n\n6. Fill the options in Build Configuration step:\n\n - *Branch* - indicates what source should be used when running the trigger. You can put the [regex](https://github.com/google/re2/wiki/Syntax) here. Matched branches are automatically verified: you can see them below the input. Note that if exactly one branch is matched, the trigger will be automatically executed after the creation.\n - *Build Type*\n\n - If your repository should be built using Docker and it contains a\n Dockerfile, select **Dockerfile** . **Source location** indicates the\n location and name of the Dockerfile. This directory will be used as the\n Docker build context. All paths should be relative to the current\n directory.\n\n - Otherwise, select **Google Cloud Buildpacks** . Use\n **Buildpack context** to specify the directory and **Entrypoint**\n (optional) to provide the command to start the server. Example:\n `gunicorn -p :8080 main:app` for Python,\n `java -jar target/myjar.jar` for Java. Leave it blank to use\n [default behavior](/docs/buildpacks/service-specific-configs#google_entrypoint).\n\n7. Click **Save**.\n\n8. The page reloads and displays the progress of the\n Continuous Deployment setup.\n\n9. Once all steps are completed, note additional options:\n\n - Edit Continuous Deployment.\n - Build History.\n - Source details in the [*Revision Details* section](/run/docs/managing/revisions#viewing_revision_details).\n\nSet up continuous deployment manually\n-------------------------------------\n\nRefer to [Setting up continuous deployment manually](/build/docs/deploying-builds/deploy-cloud-run) if you\nneed to use a manual procedure and not the UI.\n\nAttach existing Cloud Build trigger to Cloud Run service.\n---------------------------------------------------------\n\nIf you already have an existing Cloud Build trigger, you can attach it to\nthe service and take advantage of Google Cloud console features in the Service\nDetails page: *Edit Continuous Deployment* button and *Build History* chart.\n\nTo do this, add a label with \u003cvar translate=\"no\"\u003egcb-trigger-id\u003c/var\u003e as a key and\nthe unique identifier of the Cloud Build trigger as value (not the trigger\nname). See [Set or modify labels](/run/docs/configuring/services/labels#set-labels) for\nsetting up the label."]]