Обычно на основе одной и той же кодовой базы развертывается несколько сред, каждая из которых имеет несколько разную конфигурацию. Например, вы можете захотеть выделить меньше ЦП и ОЗУ для промежуточной среды или убедиться, что в вашей производственной среде хотя бы один экземпляр остается активным и готовым обслуживать запросы.
Чтобы узнать больше о средах, ознакомьтесь с обзором сред и общими рекомендациями по настройке проектов Firebase .
Предварительные условия
- Код вашего приложения уже хранится на GitHub.
- Вы уже создали отдельный проект для каждой из ваших сред, например
my-production-firebase-project
иmy-staging-firebase-project
.- Совет. Не забудьте пометить свой рабочий проект Firebase типом среды «производство» .
Шаг 0. Настройте производственную ветку git.
Если вы предпочитаете развертывать производственную среду из main
ветки, перейдите к следующему шагу. Если вы хотите развернуть производство из другой ветки, например. production
, вы должны сначала создать его на GitHub.
Чтобы создать свою производственную ветку с помощью пользовательского интерфейса GitHub, см. Создание и удаление веток в вашем репозитории .
Чтобы создать производственную ветку локально:
$ git checkout -b production
$ git push origin production:production
Шаг 1. Настройте рабочий файл apphosting.yaml.
Допустим, вы хотите убедиться, что на вашем производстве всегда работает хотя бы одна машина и имеются некоторые переменные среды, специфичные для производства. Вы можете настроить это, создав файл apphosting.yaml
в корне вашего проекта примерно следующего содержания:
# Saved at <repository root>/apphosting.yaml
runConfig:
minInstances: 1
env:
- variable: STORAGE_BUCKET
value: <production Cloud Storage bucket name>
Полный список поддерживаемых параметров см. в разделе Настройка хостинга приложений .
После редактирования apphosting.yaml
отправьте его в свой репозиторий GitHub:
$ git add apphosting.yaml
$ git commit -m "Added production App Hosting backend configuration."
$ git push origin
Шаг 2. Разверните свою кодовую базу в рабочей среде
После настройки рабочей ветки git вы можете создать новый рабочий сервер хостинга приложений. Подробные инструкции см. в разделе Начало работы с хостингом приложений .
Чтобы создать новый бэкэнд с помощью консоли Firebase, перейдите по адресу https://console.firebase.google.com/project/_/apphosting , чтобы начать работу.
Чтобы создать его локально, сначала необходимо установить Firebase CLI , а затем запустить:
firebase apphosting:backends:create --project <replace with your PRODUCTION project ID>
При успешном выполнении этой команды ваш производственный сервер должен быть запущен, и любые новые фиксации в вашей производственной ветке будут автоматически создаваться и развертываться с помощью хостинга приложений.
Шаг 3. Настройте промежуточную ветку git.
Выполните те же шаги, что и выше, чтобы создать промежуточную ветку на GitHub:
$ git checkout -b staging
$ git push origin staging:staging
Шаг 4. Настройте промежуточный файл apphosting.yaml.
В вашей промежуточной ветке уже должна быть копия рабочего файла apphosting.yaml. Давайте изменим его, чтобы хостинг приложений мог отключать вашу промежуточную среду, когда она не используется активно, а также устанавливать другое значение для переменной среды STORAGE_BUCKET
.
# Saved at <repository root>/apphosting.yaml
runConfig:
minInstances: 0
env:
- variable: STORAGE_BUCKET
value: <some other staging Cloud Storage bucket name>
После завершения редактирования отправьте файл в промежуточную ветку git:
$ git add apphosting.yaml
$ git commit -m "Added staging App Hosting backend configuration."
$ git push origin
Шаг 5. Разверните базу кода на промежуточной основе.
После настройки промежуточной ветки git вы можете выполнить те же шаги, что и выше, чтобы развернуть свою кодовую базу в промежуточной версии:
firebase apphosting:backends:create --project <replace with your STAGING project ID>
После выполнения этого шага у вас будет две серверные части хостинга приложений, работающие на одной и той же базе кода: одна для рабочей среды, другая для промежуточной обработки, каждая из которых находится в разных проектах Firebase.
Следующие шаги
- Идите глубже: ознакомьтесь с кодовой лабораторией Firebase, которая интегрирует размещенное приложение с функциями аутентификации Firebase и Google AI: Next.js | Угловой
- Подключите личный домен .
- Настройте свой бэкэнд .
- Отслеживайте развертывание, использование сайта и журналы .