FIREBASE · GOOGLE CLOUD

Firebase / GCP
프로젝트 & 키 셋업

앱 개발에서 가장 많이 쓰는 Firebase(FCM 푸시·Auth·Firestore·Analytics)와 Google Cloud 프로젝트 초기 셋업 가이드입니다. 결제 프로필 연결부터 iOS/Android SDK 키까지 한 번에 정리합니다.

가입비

무료 (Spark)

유료 전환

필요 시 Blaze

필요 정보

Google 계정·카드

Overview

시작 전에 확인하세요

Firebase는 Google Cloud 프로젝트 위에 올라가는 제품군입니다. Spark(무료) 요금제로 시작하되, Cloud Functions·Storage 사용량이 늘면 Blaze(종량제)로 업그레이드가 필요합니다. FCM 푸시 자체는 Spark에서도 무제한 무료입니다.

Google 계정 + 2FA

조직 Workspace 계정 권장.

결제 수단 (Blaze)

해외결제 가능 카드 필요.

프로젝트 명 정하기

일부 리소스에 고정 포함됨.

리전 결정 (Asia-Northeast3)

한국 서비스는 서울 리전.

Step by Step

단계별 가이드

01

PROJECT

Google Cloud 프로젝트 생성

Firebase는 내부적으로 GCP 프로젝트를 생성합니다.

  • console.cloud.google.com 접속
  • 새 프로젝트 만들기 (프로젝트 ID는 전역 고유)
  • 조직 없음 또는 조직 선택
  • 이후 Firebase 콘솔에서도 자동 연동됨
02

FIREBASE

Firebase 프로젝트 추가

기존 GCP 프로젝트에 Firebase 기능을 활성화합니다.

  • console.firebase.google.com > 프로젝트 추가
  • 기존 GCP 프로젝트 선택
  • Google Analytics 사용 여부 선택 (권장: 사용)
  • Analytics 계정 연결 (신규 생성 or 기존)
03

BILLING

요금제 업그레이드 (필요 시)

외부 API 호출·Storage 사용은 Blaze 필요.

  • 요금제 > 업그레이드 > Blaze 종량제
  • 결제 계정 연결 (카드 등록)
  • 예산 알림 설정 (월 $10·$50·$100 등)
  • Spark에서도 FCM·Auth·Firestore 무료 한도는 유지
04

APP

iOS / Android 앱 등록

각 플랫폼용 설정 파일을 다운로드합니다.

  • iOS: 번들 ID 입력 → GoogleService-Info.plist 다운로드
  • Android: 패키지명 + SHA-1(keystore) → google-services.json 다운로드
  • Web: 앱 별칭 입력 → firebaseConfig 스크립트 복사
  • 설정 파일은 프로젝트 루트/Android app/ 폴더에 배치
05

PUSH

FCM 푸시 셋업

푸시 알림은 FCM(Firebase Cloud Messaging) 무료.

  • iOS: APNs 인증 키(.p8) 업로드 — Apple Developer 계정 필요
  • Key ID + Team ID도 함께 입력
  • Android: FCM은 별도 설정 없이 google-services.json으로 동작
  • 서버 키는 Cloud Messaging 설정에서 확인
06

AUTH

Authentication 활성화

로그인 방식을 활성화합니다.

  • 이메일/비밀번호 · Google · Apple · Facebook · 전화번호 등
  • 각 제공자별 OAuth 설정 (Apple은 Apple Developer에서 Service ID 발급)
  • 승인된 도메인 등록 (로컬 테스트는 localhost 자동 포함)
  • 보안 규칙 기본값 확인
07

DATABASE

Firestore / Realtime DB

데이터 저장소 선택 및 생성.

  • Firestore: 문서 기반, 대부분 서비스에 권장
  • Realtime Database: 실시간 동기화가 핵심인 경우
  • 리전 선택: asia-northeast3 (서울) 권장
  • 시작 모드: 프로덕션(권한 엄격) / 테스트(공개) — 반드시 프로덕션
  • 보안 규칙(Security Rules) 작성 필수
08

ADMIN

서비스 계정 / Admin SDK 키

서버에서 Admin SDK를 쓰려면 서비스 계정 키 발급.

  • 프로젝트 설정 > 서비스 계정 > 새 비공개 키 생성
  • .json 파일 다운로드 (한 번만 표시됨)
  • 절대 Git에 커밋 금지 · .env 또는 Secret Manager 사용
  • Vercel이면 JSON 전체를 base64로 env에 저장하거나 개별 필드 분리

Pitfalls

자주 막히는 부분

Spark → Blaze 강제 전환

Cloud Functions 배포·외부 API 호출 시 Blaze가 필수. 카드 등록이 안 된 상태로 배포하면 실패합니다.

APNs 키 미등록 iOS 푸시 실패

iOS에서 FCM은 APNs(Apple Push Notification) 토큰을 FCM 토큰으로 변환해 사용합니다. Apple Developer에서 APNs 인증 키(.p8)를 먼저 발급하세요.

google-services.json 보안

자체는 공개 가능하지만 Android SHA-1이 포함되어 있어 함께 관리되는 값과 연결됩니다. 대신 서비스 계정 JSON은 절대 공개 금지.

Security Rules 기본값 방치

테스트 모드(공개) 상태로 두면 누구나 DB 조회 가능. 프로덕션 규칙으로 즉시 전환.

리전 변경 불가

Firestore/Storage 리전은 프로젝트 생성 시 한 번 결정하면 변경 불가. 서울 리전 선택 권장.

등록이 복잡하면 대행해 드려요

제이씨랩이 진행하는 프로젝트는 개발자 계정 셋업부터 출시·운영까지 모두 포함됩니다.