Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O Firebase App Hosting usa o Cloud Build para transformar o código-fonte do aplicativo em um formato em contêineres adequado para implantação no Cloud Run.
O processo de build opera nas seguintes etapas principais:
Ingestão: coleta o código-fonte e a configuração do aplicativo.
Build: instala dependências e cria o aplicativo.
Transferência: finaliza o contêiner Cloud Run de produção.
Essas três etapas correspondem diretamente às etapas de build 1, 2 e 3, conforme exibido em
Cloud Build no console do Google Cloud:
Fase de ingestão
Essa etapa é responsável por processar a lógica de pré-build. Ele lê, higieniza e
grava variáveis de ambiente definidas pelo usuário. Ele também desreferencia e fixa todos os
secrets especificados no arquivo apphosting.yaml.
Etapa de build
Essa é a parte principal do processo de build, responsável por gerar uma imagem de contêiner executável e um arquivo bundle.yaml que define a configuração do build.
Ele usa Buildpacks nativos da nuvem
para empacotar o
aplicativo de maneira eficiente. Para mais informações sobre o arquivo bundle.yaml, acesse github.
Os buildpacks são responsáveis por transformar o código-fonte do aplicativo em
imagens de contêiner prontas para produção. O Firebase App Hosting encadeia
vários buildpacks para concluir o processo de build:
Buildpack de ambiente de execução: garante que todos os componentes necessários para executar um aplicativo Node.js básico sejam incluídos e que as dependências sejam instaladas.
Buildpack do monorepo: configura buildpacks subsequentes para processar diferentes
cenários de monorepo.
Pacote de build do framework: instala o adaptador de framework correto (como
Angular ou Next.js) e prepara os pacotes de build subsequentes.
Os adaptadores de framework são responsáveis por executar o comando de build de produção
e mapear todos os valores de configuração relevantes específicos do framework para um
formato padrão legível pelo App Hosting.
Buildpack do gerenciador de pacotes: executa a instalação de dependências e
cria o app usando npm, yarn ou pnpm.
Buildpack do pacote de saída: define o comando de execução e prepara o pacote de saída para execução.
Etapa de transferência
Essa etapa final empacota todas as informações extraídas do código-fonte do aplicativo, além da imagem do contêiner de build, e as envia para o back-end App Hosting. O back-end App Hosting usa essas informações para configurar o
Cloud Run com as configurações adequadas.
Saiba mais
Todo o processo de build do App Hosting é de código aberto.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-31 UTC."],[],[],null,["\u003cbr /\u003e\n\nFirebase App Hosting utilizes Cloud Build to transform your\napplication source code into a containerized format suitable for deployment on\nCloud Run.\n\nThe build process operates through the following key stages:\n\n1. **Ingest**: Gathers your application source code and configuration.\n\n2. **Build**: Installs dependencies and builds your application.\n\n3. **Handoff** : Finalizes the production Cloud Run container.\n\nThese three steps correspond directly to build steps 1, 2 and 3 as displayed in\nCloud Build in the Google Cloud Console:\n\nIngest stage\n\nThis stage is responsible for handling pre-build logic. It reads, sanitizes, and\nwrites user-defined environment variables. It also dereferences and pins any\nsecrets specified in the `apphosting.yaml` file.\n\nBuild stage\n\nThis is the core of the build process, responsible for generating a runnable\ncontainer image and a `bundle.yaml` file defining your build configuration.\nIt utilizes [Cloud Native Buildpacks](https://cloud.google.com/docs/buildpacks/overview)\nto package the\napplication efficiently. More information on the `bundle.yaml`file can be found\non [github](https://github.com/FirebaseExtended/firebase-framework-tools).\n\nBuildpacks are responsible for transforming your application source code into\nproduction ready container images. Firebase App Hosting chains together\nseveral buildpacks to complete the build process:\n\n1. **Runtime Buildpack**: Ensures all necessary components for running a basic Node.js application are included and dependencies are installed.\n2. **Monorepo Buildpack**: Configures subsequent buildpacks to handle different monorepo scenarios.\n3. **Framework Buildpack**: Installs the correct framework adapter (like\n Angular or Next.js) and prepares subsequent buildpacks.\n\n Framework adapters are in charge of running the productionized build\n command and mapping any relevant framework-specific config values to a\n standard format readable by App Hosting.\n4. **Package Manager Buildpack**: Executes the installation of dependencies and\n builds the app using npm, yarn, or pnpm.\n\n5. **Output Bundle Buildpack**: Defines the run command and prepares the output\n bundle for execution.\n\nHandoff stage\n\nThis final stage packages all the information extracted from the application\nsource code plus the build container image and sends it to the App Hosting\nbackend. The App Hosting backend then uses this information to set up\nCloud Run with the proper configurations.\n\nLearn more\n\nThe entire App Hosting build process is open source.\n\n- The buildpack code is in [the Google Cloud buildpacks repo](https://github.com/GoogleCloudPlatform/buildpacks)\n- Code for framework adapters is in the [firebase-framework-tools repo](https://github.com/FirebaseExtended/firebase-framework-tools)\n- Learn more about [Cloud Native buildpacks](https://cloud.google.com/docs/buildpacks/overview) and [Cloud Build](https://cloud.google.com/build/docs/overview)"]]