Firebase에 배포

이 페이지에서는 Cloud Build를 사용하여 Firebase에 애플리케이션을 배포하는 방법을 설명합니다. Cloud Build를 처음 사용하는 경우 빠른 시작빌드 구성 개요를 먼저 읽어보세요.

시작하기 전에

  • Enable the Cloud Build, Firebase, and Resource Manager APIs.

    Enable the APIs

  • 이 페이지에서 gcloud 명령어를 실행하려면 Google Cloud CLI를 설치합니다.

  • firebase.json을 포함하여 애플리케이션 소스 코드를 바로 사용할 수 있도록 준비합니다. 소스 코드는 Cloud Source Repositories, GitHub 또는 Bitbucket과 같은 저장소에 저장되어야 합니다.

  • 아직 프로젝트를 Firebase에 배포하지 않았으면 Firebase를 설치 및 초기화하여 기본 프로젝트를 만들 수 있습니다.

필수 IAM 권한

  1. Google Cloud Console에서 IAM 페이지를 엽니다.

    IAM 페이지 열기

  2. 프로젝트를 선택하고 열기를 클릭합니다.

  3. 권한 테이블에서 빌드에 사용 중인 서비스 계정의 이메일을 찾고 연필 아이콘을 클릭합니다.

  4. Cloud Build Service Account, Firebase Admin, API Keys Admin 역할을 추가합니다.

  5. 저장을 클릭합니다.

firebase 커뮤니티 빌더 사용

Cloud Build는 Cloud Build에서 firebase 명령어를 호출하기 위해 사용할 수 있는 Firebase 커뮤니티 빌더 이미지를 제공합니다. Cloud Build 구성 파일에서 이 빌더를 사용하려면 먼저 이미지를 빌드하고 이를 해당 프로젝트의 Container Registry에 푸시해야 합니다.

firebase 커뮤니티 빌더를 빌드하고 푸시하려면 다음 안내를 따르세요.

  1. 프로젝트 루트 디렉터리로 이동합니다.

  2. cloud-builders-community 저장소를 클론합니다.

    git clone https://github.com/GoogleCloudPlatform/cloud-builders-community.git
    
  3. firebase 빌더 이미지로 이동합니다.

    cd cloud-builders-community/firebase
    
  4. 프로젝트에 빌더를 제출합니다. 여기서 REGION지원되는 빌드 리전 중 하나입니다.

    gcloud builds submit --region=REGION .
    
  5. 프로젝트 루트 디렉터리로 이동합니다.

    cd ../..
    
  6. 루트 디렉터리에서 저장소를 삭제합니다.

    rm -rf cloud-builders-community/
    

배포 구성

firebase 커뮤니티 빌더를 빌드한 후에는 빌드 구성 파일에서 firebase 빌드 단계를 사용하여 Firebase에 배포할 수 있습니다.

  1. cloudbuild.yaml 또는 cloudbuild.json이라는 빌드 구성 파일을 만듭니다. 여기서 project-id는 Google Cloud 프로젝트 ID이고 firebase-project-id는 Firebase 프로젝트 ID입니다.

    YAML

          steps:
          - name: gcr.io/project-id/firebase
            args: ['deploy', '--project=firebase-project-id', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "gcr.io/project-id/firebase",
          "args": [
             "deploy",
             "--project",
             "firebase-project-id",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. 빌드 구성 파일을 사용하여 빌드를 시작합니다.

    gcloud builds submit --region=REGION --config config-file-path source-directory
    

    각 항목의 의미는 다음과 같습니다.

    • config-file-path는 빌드 구성 파일의 경로입니다.
    • source-directory는 소스 코드의 경로 또는 URL입니다.
    • REGION지원되는 빌드 리전 중 하나입니다.

지속적 배포

Cloud Build 트리거를 만들어서 Firebase에 대한 소프트웨어 배포를 자동화할 수 있습니다. 트리거를 구성하면 소스 코드를 업데이트할 때마다 이미지를 빌드하고 배포할 수 있습니다.

Firebase 배포를 자동화하려면 다음 안내를 따르세요.

  1. 저장소에서 firebase deploy 명령어 호출 단계에 따라 빌드 구성 파일을 추가합니다. 여기서 project-id는 사용자의 Google Cloud 프로젝트 ID입니다.

    YAML

    steps:
          - name: gcr.io/project-id/firebase
            args: ['deploy', '--project=project-id', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "gcr.io/project-id/firebase",
          "args": [
             "deploy",
             "--project",
             "project-id",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. 이전 단계에서 만든 빌드 구성 파일로 트리거를 만듭니다.

    1. Google Cloud Console에서 트리거 페이지를 엽니다.

      트리거 페이지 열기

    2. 페이지 상단의 프로젝트 선택기 드롭다운 메뉴에서 프로젝트를 선택합니다.

    3. 열기를 클릭합니다.

    4. 트리거 만들기를 클릭합니다.

      트리거 만들기 페이지에서 다음 설정을 입력합니다.

      1. 트리거 이름을 입력합니다.

      2. 트리거를 시작할 저장소 이벤트를 선택합니다.

      3. 소스 코드와 빌드 구성 파일이 포함된 저장소를 선택합니다.

      4. 트리거를 시작할 분기 또는 태그 이름의 정규식을 지정합니다.

      5. 구성: 이전에 만든 빌드 구성 파일을 선택합니다.

    5. 만들기를 클릭하여 빌드 트리거를 저장합니다.

새 코드를 저장소에 푸시할 때마다 Firebase에서 빌드 및 배포가 자동으로 시작됩니다.

Cloud Build 트리거 생성에 대한 자세한 내용은 빌드 트리거 생성 및 관리를 참조하세요.

코드 예

Cloud Build를 사용하여 Firebase에 배포를 위한 코드 예시를 보려면 deploy-firebase-example을 참조하세요.

다음 단계