Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Firebase App Hosting использует Cloud Build для преобразования исходного кода вашего приложения в контейнерный формат, подходящий для развертывания в Cloud Run .
Процесс сборки проходит следующие основные этапы:
Ingest : собирает исходный код и конфигурацию вашего приложения.
Сборка : устанавливает зависимости и собирает ваше приложение.
Handoff : завершает создание контейнера Cloud Run .
Эти три шага напрямую соответствуют шагам сборки 1, 2 и 3, отображаемым в Cloud Build в Google Cloud Console:
Стадия поглощения
Этот этап отвечает за обработку логики, предшествующей сборке. Он считывает, очищает и записывает пользовательские переменные окружения. Он также разыменовывает и закрепляет все секретные данные, указанные в файле apphosting.yaml .
Этап сборки
Это ядро процесса сборки, отвечающее за создание готового к запуску образа контейнера и файла bundle.yaml , определяющего конфигурацию сборки. Для эффективной упаковки приложения используются облачные Buildpack-пакеты . Подробнее о файле bundle.yaml можно узнать на GitHub .
Сборочные пакеты отвечают за преобразование исходного кода вашего приложения в готовые к использованию образы контейнеров. Firebase App Hosting объединяет несколько сборочных пакетов для завершения процесса сборки:
Runtime Buildpack : обеспечивает включение всех необходимых компонентов для запуска базового приложения Node.js и установку зависимостей.
Monorepo Buildpack : настраивает последующие пакеты сборки для обработки различных сценариев monorepo.
Framework Buildpack : устанавливает нужный адаптер фреймворка (например, Angular или Next.js) и подготавливает последующие buildpack-пакеты.
Адаптеры фреймворка отвечают за запуск команды сборки производственного образца и сопоставление любых соответствующих значений конфигурации, специфичных для фреймворка, со стандартным форматом, читаемым App Hosting .
Менеджер пакетов Buildpack : выполняет установку зависимостей и собирает приложение с помощью npm, yarn или pnpm.
Output Bundle Buildpack : определяет команду запуска и подготавливает выходной пакет к выполнению.
Этап передачи
На этом заключительном этапе вся информация, извлечённая из исходного кода приложения и образа контейнера сборки, упаковывается и отправляется в бэкенд App Hosting . Бэкенд App Hosting затем использует эту информацию для настройки Cloud Run с необходимыми настройками.
Узнать больше
Весь процесс сборки App Hosting имеет открытый исходный код.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-08-30 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)"]]