이 페이지에서는 Cloud Build를 사용하여 Firebase에 애플리케이션을 배포하는 방법을 설명합니다. Cloud Build를 처음 사용하는 경우 빠른 시작 및 빌드 구성 개요를 먼저 읽어보세요.
시작하기 전에
-
Enable the Cloud Build, Firebase, and Resource Manager APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
이 페이지에서
gcloud
명령어를 실행하려면 Google Cloud CLI를 설치합니다.firebase.json
을 포함하여 애플리케이션 소스 코드를 바로 사용할 수 있도록 준비합니다. 소스 코드는 Cloud Source Repositories, GitHub 또는 Bitbucket과 같은 저장소에 저장되어야 합니다.아직 프로젝트를 Firebase에 배포하지 않았으면 Firebase를 설치 및 초기화하여 기본 프로젝트를 만들 수 있습니다.
필수 IAM 권한
Google Cloud 콘솔에서 IAM 페이지를 엽니다.
프로젝트를 선택하고 열기를 클릭합니다.
권한 테이블에서 빌드에 사용 중인 서비스 계정의 이메일을 찾고 연필 아이콘을 클릭합니다.
서비스 계정에
Cloud Build Service Account
(roles/cloudbuild.builds.builder
),Firebase Admin
(roles/firebase.admin
),API Keys Admin
(roles/serviceusage.apiKeysAdmin
) 역할을 추가합니다.저장을 클릭합니다.
firebase
Docker 이미지 사용
Cloud Build는 Cloud Build에서 firebase
명령어를 호출하기 위해 사용할 수 있는 빌더 이미지를 제공합니다. Cloud Build 구성 파일에서 이 빌더를 사용하려면 firebase
빌드 단계를 사용하여 Firebase에 배포하면 됩니다.
cloudbuild.yaml
또는cloudbuild.json
이라는 빌드 구성 파일을 만듭니다. 여기서 PROJECT_ID는Google Cloud 프로젝트 ID이고 FIREBASE_PROJECT_ID는 Firebase 프로젝트 ID입니다.YAML
steps: - name: "us-docker.pkg.dev/firebase-cli/us/firebase" args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting'] ## Or, target a specific version of firebase-tools - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "FIREBASE_PROJECT_ID", "--only", "hosting" ] } ] }
을 사용하여firebase-tools
의 특정 버전을 선택할 수 있습니다.name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
빌드 구성 파일을 사용하여 빌드를 시작합니다.
gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
각 항목의 의미는 다음과 같습니다.
- REGION은 지원되는 빌드 리전 중 하나입니다.
- CONFIG_FILE_PATH는 빌드 구성 파일의 경로입니다.
- SOURCE_DIRECTORY는 소스 코드의 경로 또는 URL입니다.
지속적 배포
Cloud Build 트리거를 만들어 Firebase로 소프트웨어를 배포하는 과정을 자동화할 수 있습니다. 트리거를 구성하면 소스 코드를 업데이트할 때마다 이미지를 빌드하고 배포할 수 있습니다.
Firebase 배포를 자동화하려면 다음 안내를 따르세요.
저장소에서
firebase deploy
명령어 호출 단계에 따라 빌드 구성 파일을 추가합니다. 여기서 PROJECT_ID는 사용자의 Google Cloud 프로젝트 ID입니다.YAML
steps: - name: us-docker.pkg.dev/firebase-cli/us/firebase args: ['deploy', '--project=PROJECT_ID', '--only=hosting']
JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "PROJECT_ID", "--only", "hosting" ] } ] }
이전 단계에서 만든 빌드 구성 파일로 트리거를 만듭니다.
Google Cloud 콘솔에서 트리거 페이지를 엽니다.
페이지 상단의 프로젝트 선택기 드롭다운 메뉴에서 프로젝트를 선택합니다.
열기를 클릭합니다.
트리거 만들기를 클릭합니다.
트리거 만들기 페이지에서 다음 설정을 입력합니다.
트리거 이름을 입력합니다.
트리거를 시작할 저장소 이벤트를 선택합니다.
소스 코드와 빌드 구성 파일이 포함된 저장소를 선택합니다.
트리거를 시작할 브랜치 또는 태그 이름의 정규식을 지정합니다.
구성: 이전에 만든 빌드 구성 파일을 선택합니다.
만들기를 클릭하여 빌드 트리거를 저장합니다.
새 코드를 저장소에 푸시할 때마다 Firebase에서 빌드 및 배포가 자동으로 시작됩니다.
Cloud Build 트리거 생성에 대한 자세한 내용은 빌드 트리거 생성 및 관리를 참조하세요.
코드 예
Cloud Build를 사용하여 Firebase에 배포를 위한 코드 예시를 보려면 deploy-firebase-example을 참조하세요.
다음 단계
- Compute Engine에서 블루/그린 배포 수행 방법 알아보기
- Cloud Run에 배포하는 방법 알아보기
- GKE에 배포하는 방법 알아보기
- Cloud Run 함수에 배포하는 방법 알아보기
- App Engine에 배포하는 방법 알아보기
- 빌드 오류 문제 해결 방법 알아보기