Firebase Hosting은 Cloud Functions for Firebase 및 Cloud Run을 포함한 서버리스 컴퓨팅 옵션과 통합됩니다. 이러한 옵션으로 Firebase Hosting을 사용하면 HTTPS 요청 전달로 함수와 컨테이너화된 앱이 안전한 관리형 환경에서 실행되도록 트리거하여 마이크로서비스를 호스팅할 수 있습니다.
Cloud Functions for Firebase: 특정 트리거에 응답하는 백엔드 코드인 함수를 작성하고 배포합니다. 그런 다음 Firebase Hosting을 사용해 HTTPS 요청을 전달하면 함수가 실행되도록 트리거할 수 있습니다.
Cloud Run: 컨테이너 이미지로 패키징된 애플리케이션을 작성하고 배포합니다. 그런 다음 Firebase Hosting을 사용해 HTTPS 요청을 전달하면 컨테이너화된 앱이 실행되도록 트리거할 수 있습니다.
사용 사례
Firebase Hosting에서 서버리스 컴퓨팅 옵션을 사용하려면 어떻게 해야 하나요?
동적 콘텐츠 제공 - Hosting 사이트에 정적 콘텐츠 제공 외에 서버 측 로직을 수행하는 함수나 컨테이너화된 앱에서 동적으로 생성된 응답을 제공할 수 있습니다.
예를 들어 URL 패턴(예: /blog/<blog-post-id>)을 함수에 연결하고, 함수에서는 URL의 블로그 게시물 ID 매개변수를 사용하여 데이터베이스의 콘텐츠를 동적으로 검색할 수 있습니다.
REST API 빌드 — 함수를 사용하여 마이크로서비스 API를 생성할 수 있습니다.
예를 들어 함수는 사용자 웹사이트의 로그인 기능을 처리할 수 있습니다. 웹사이트가 /에 호스팅되는 동안 /api에 대한 요청은 마이크로서비스 API로 리디렉션됩니다. 이에 관한 예시는 오픈소스 샘플을 확인하세요.
서버리스 옵션 중 하나를 사용하는 경우 다음 리전 중 하나에 배포하여 Firebase Hosting 서버와 같은 위치에 배치하는 것이 가장 좋습니다.
us-west1
us-central1
us-east1
europe-west1
asia-east1
다음 표에서는 Cloud Functions for Firebase 및 Cloud Run을 사용할 때 고려해야 할 몇 가지 기본사항을 비교하여 설명합니다. 할당량, 한도, 측정항목의 전체 목록은 각 제품의 세부 문서(Cloud Functions for Firebase 또는 Cloud Run)를 참조하세요.
고려사항
Cloud Functions for Firebase
Cloud Run
설정
Firebase CLI는 초기화부터 빌드 및 배포에 이르기까지 여러 태스크를 하나의 명령어로 묶습니다.
컨테이너는 더 많은 맞춤설정 옵션을 제공하므로 설정, 빌드, 배포 태스크에 별도의 단계가 필요합니다.
[null,null,["최종 업데이트: 2025-08-27(UTC)"],[],[],null,["\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nFirebase Hosting integrates with serverless computing options, including\nCloud Functions for Firebase and Cloud Run. Using Firebase Hosting with\nthese options, you can host microservices by directing HTTPS requests to trigger\nyour functions and containerized apps to run in a managed, secure environment.\n\n[**Cloud Functions for Firebase**](/docs/hosting/functions): You write and deploy a\nfunction, which is backend code that responds to a specific trigger. Then, using\nFirebase Hosting, you can direct HTTPS requests to trigger your function\nto run.\n\n[**Cloud Run**](/docs/hosting/cloud-run): You write and deploy an\napplication packaged in a container image. Then, using Firebase Hosting, you\ncan direct HTTPS requests to trigger your containerized app to run.\n| **Note:** If you're using Angular or Next.js to develop a full-stack Web app with server-side rendering or AI features, try out the preview of [App Hosting](/docs/app-hosting). App Hosting is a unified product for managing static and dynamic content together.\n\nUse cases\n\nHow can you use serverless computing options with Firebase Hosting?\n\n- **Serve dynamic content** --- In addition to serving static content on\n your Hosting site, you can serve dynamically generated responses from a\n function or containerized app that is performing server-side logic.\n\n For example, you can point a URL pattern (like `/blog/\u003cblog-post-id\u003e`) to a\n function that uses the URL's blog post ID parameter to retrieve content\n dynamically from your database.\n- **Build REST APIs** --- You can create a microservice API using functions.\n\n For instance, functions can handle the sign-in functionality for your\n website. While your website is hosted at `/`, any request to `/api` is\n redirected to your microservice API. For an example, check out\n [this open-source sample](//github.com/firebase/functions-samples/tree/Node-8/authenticated-json-api).\n- **Cache dynamic content** --- You can\n [configure caching](/docs/hosting/manage-cache) of your dynamic content on\n a global CDN.\n\n For example, if a function generates new content only periodically, you\n can speed up your app by caching the generated content for at least a short\n period of time. You can also potentially reduce execution costs because the\n content is served from the CDN rather than via a triggered function or\n containerized app.\n- **Prerender your single-page apps** --- You can improve SEO and optimize\n sharing across various social networks by creating dynamic `meta` tags. To\n learn more, watch this [video](//www.youtube.com/watch?v=82tZAPMHfT4)\n or check out\n [this open-source sample](//github.com/firebase/functions-samples/tree/Node-8/isomorphic-react-app).\n\nChoosing a serverless option\n\nWhile both [**Cloud Functions for Firebase**](/docs/hosting/functions) and\n[**Cloud Run**](/docs/hosting/cloud-run) integrate with\nFirebase Hosting and offer a fully managed, autoscaling, and secure\nserverless environment, the two options can be leveraged for different use cases\nand desired level of customized configuration.\n\nWhen using either serverless option, it is best to co-locate it with the servers\nfor Firebase Hosting by deploying in one of the following regions:\n\n- `us-west1`\n- `us-central1`\n- `us-east1`\n- `europe-west1`\n- `asia-east1`\n\nThe following table describes some basic considerations for using\nCloud Functions for Firebase versus Cloud Run. For a full listing of\nquotas, limits, and metrics, refer to each product's detailed documentation\n([Cloud Functions for Firebase](/docs/functions/quotas) or\n[Cloud Run](//cloud.google.com/run/quotas)).\n\n| **Consideration** | **Cloud Functions for Firebase** | **Cloud Run** |\n|-------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Setup** | The Firebase CLI bundles multiple tasks into single commands, from initializing to building and deploying. | Containers offer more customizable options, so setup, build, and deployment tasks involve discrete steps. |\n| **Runtime environment** | Requires Node.js, but you can specify [which version](/docs/functions/manage-functions#set_runtime_options) of Node.js to use. | When [building your container](/docs/hosting/cloud-run#containerize), you specify the runtime environment. |\n| **Language and frameworks support** | JavaScript and TypeScript Web frameworks, like Express.js, are supported. | Any language that Dockerfiles support, including [Go, Node.js, Python, Java, and others](//cloud.google.com/run/docs/quickstarts/build-and-deploy#writing) Web frameworks for each language are supported. |\n| **Timeout for Hosting request** | 60 seconds (see Note below) | 60 seconds (see Note below) |\n| **Concurrency** | 1 request per function instance (no concurrency per instance) | Up to 1,000 concurrent requests per container instance |\n| **Billing** | [Cloud Functions usage](/pricing) Free usage quota, but a [Cloud Billing account](//cloud.google.com/billing/docs/how-to/manage-billing-account) is required. See the [Firebase FAQ](/support/faq#functions-pricing). | [Cloud Run usage](//cloud.google.com/run/pricing) + [Container Registry storage](//cloud.google.com/container-registry/) Free usage quota, but a [Cloud Billing account](//cloud.google.com/billing/docs/how-to/manage-billing-account) is required |\n| **Billing** | | If your Firebase project is on the Spark pricing plan, and you associate your Firebase project with a Cloud Billing account, then your Firebase project is automatically upgraded to the Blaze pricing plan. Review the [Firebase pricing page](/pricing) for a comparison of the Spark and Blaze plans. ||\n\n| **Note:** Even though Cloud Functions and Cloud Run have longer request timeouts, Firebase Hosting is subject to a 60-second request timeout. If your app requires more than 60 seconds to run, you'll receive an HTTPS status code `504` (request timeout)."]]