Интерфейс командной строки Firebase (GitHub) предоставляет различные инструменты для управления проектами Firebase, их просмотра и развертывания.
Прежде чем использовать интерфейс командной строки Firebase, настройте проект Firebase.
Как настроить или обновить CLI
Установите CLI Firebase
Вы можете установить CLI Firebase способом, который соответствует вашей операционной системе, уровню опыта и/или варианту использования. Независимо от способа установки CLI, вы получите доступ к одним и тем же функциям и команде firebase.
Windows
Установить CLI Firebase для Windows можно одним из следующих способов:
| Option | Описание | Рекомендуется для… |
|---|---|---|
| автономный двоичный файл | Скачайте отдельный двоичный файл для CLI. Затем вы можете запустить исполняемый файл, чтобы открыть оболочку, в которой можно выполнить команду firebase.
|
Новые разработчики Разработчики, которые не используют Node.js или не знакомы с этой платформой. |
| npm | Используйте npm (менеджер пакетов Node), чтобы установить интерфейс командной строки и включить глобально доступную команду firebase.
|
Разработчики, использующие Node.js |
отдельный двоичный файл
Чтобы скачать и запустить двоичный файл для CLI Firebase, выполните следующие действия:
Скачайте двоичный файл CLI Firebase для Windows.
Откройте оболочку, в которой можно выполнить команду
firebase.Перейдите к разделу Как войти в CLI и протестировать его.
npm
Чтобы установить интерфейс командной строки Firebase с помощью npm (Node Package Manager), выполните следующие действия:
Установите Node.js с помощью nvm-windows (менеджера версий Node). При установке Node.js автоматически устанавливаются инструменты командной строки
npm.Установите интерфейс командной строки Firebase с помощью
npm, выполнив следующую команду:npm install -g firebase-tools
Эта команда включает глобально доступную команду
firebase.Перейдите к разделу Как войти в CLI и протестировать его.
macOS или Linux
Установить CLI Firebase для macOS или Linux можно одним из следующих способов:
| Option | Описание | Рекомендуется для… |
|---|---|---|
| скрипт автоматической установки | Выполните одну команду, которая автоматически определит вашу операционную систему, скачает последнюю версию CLI и включит глобально доступную команду firebase.
|
Новые разработчики Разработчики, которые не используют или не знают Node.js Автоматическое развертывание в среде CI/CD |
| автономный двоичный файл | Скачайте отдельный двоичный файл для CLI. Затем вы можете настроить и запустить двоичный файл в соответствии с вашим рабочим процессом. | Полностью настраиваемые рабочие процессы с помощью CLI. |
| npm | Используйте npm (менеджер пакетов Node), чтобы установить интерфейс командной строки и включить глобально доступную команду firebase.
|
Разработчики, использующие Node.js |
скрипт автоматической установки
Чтобы установить CLI Firebase с помощью скрипта автоматической установки, выполните следующие действия:
Выполните следующую команду cURL:
curl -sL https://firebase.tools | bash
Этот скрипт автоматически определяет операционную систему, скачивает последнюю версию CLI Firebase и активирует глобальную команду
firebase.Перейдите к разделу Как войти в CLI и протестировать его.
Дополнительные примеры и сведения о скрипте автоматической установки можно найти в его исходном коде на сайте firebase.tools.
отдельный двоичный файл
Чтобы скачать и запустить двоичный файл для интерфейса командной строки Firebase, который подходит для вашей операционной системы, выполните следующие действия:
Скачайте двоичный файл CLI Firebase для своей ОС: macOS | Linux
(Необязательно) Настройте глобально доступную команду
firebase.- Сделайте двоичный файл исполняемым, выполнив команду
chmod +x ./firebase_tools. - Добавьте путь к двоичному файлу в переменную PATH.
- Сделайте двоичный файл исполняемым, выполнив команду
Перейдите к разделу Как войти в CLI и протестировать его.
npm
Чтобы установить CLI Firebase с помощью npm (Node Package Manager), выполните следующие действия:
Установите Node.js с помощью nvm (менеджера версий Node).
При установке Node.js автоматически устанавливаются инструменты командной строкиnpm.Установите интерфейс командной строки Firebase с помощью
npm, выполнив следующую команду:npm install -g firebase-tools
Эта команда включает глобально доступную команду
firebase.Перейдите к разделу Как войти в CLI и протестировать его.
Войдите в систему и протестируйте CLI Firebase
После установки CLI необходимо пройти аутентификацию. Затем вы можете подтвердить аутентификацию, выведя список своих проектов Firebase.
Войдите в Firebase, используя аккаунт Google, с помощью следующей команды:
firebase login
Эта команда подключает локальный компьютер к Firebase и предоставляет доступ к проектам Firebase.
Чтобы проверить, правильно ли установлен интерфейс командной строки и есть ли у него доступ к вашему аккаунту, посмотрите список проектов Firebase. Выполните следующую команду:
firebase projects:list
Список должен совпадать с проектами Firebase, перечисленными в консоли Firebase.
Обновите CLI до последней версии
Как правило, рекомендуется использовать самую последнюю версию CLI Firebase.
Способ обновления версии CLI зависит от операционной системы и способа установки CLI.
Windows
- Автономный двоичный файл. Скачайте новую версию и замените ею старую.
- npm: выполните
npm install -g firebase-tools.
MacOS
Скрипт автоматической установки. Выполните команду
curl -sL https://firebase.tools | upgrade=true bash.Автономный двоичный файл. Скачайте новую версию и замените ею старую.
npm: выполните
npm install -g firebase-tools.
Linux
Скрипт автоматической установки. Выполните команду
curl -sL https://firebase.tools | upgrade=true bash.Автономный двоичный файл. Скачайте новую версию и замените ею старую.
npm: выполните
npm install -g firebase-tools.
Как удалить Firebase CLI
Способ удаления CLI зависит от операционной системы и способа установки CLI.
Windows
- Отдельный исполняемый файл. Удалите скачанный исполняемый файл
firebase.exe. - npm: выполните
npm uninstall -g firebase-tools.
MacOS
Скрипт автоматической установки. Выполните команду:
curl -sL https://firebase.tools | uninstall=true bashОтдельный исполняемый файл. Удалите скачанный исполняемый файл
firebase. Если вы добавили его местоположение в переменную средыPATH, удалите его.npm: выполните
npm uninstall -g firebase-tools.
Linux
Скрипт автоматической установки. Выполните команду:
curl -sL https://firebase.tools | uninstall=true bashОтдельный исполняемый файл. Удалите скачанный исполняемый файл
firebase. Если вы добавили его местоположение в переменную средыPATH, удалите его.npm: выполните команду
npm uninstall -g firebase-tools.
Как использовать CLI с системами непрерывной интеграции
При использовании CLI с системами непрерывной интеграции мы рекомендуем выполнять аутентификацию с помощью учетных данных по умолчанию для приложения.
(Рекомендуется) Использовать Application Default Credentials
CLI Firebase обнаружит и будет использовать Application Default Credentials, если они настроены. Проще всего выполнить аутентификацию CLI в CI и других средах без графического интерфейса, настроив Application Default Credentials.
(Устарело) Используйте FIREBASE_TOKEN.
Вы также можете выполнить аутентификацию с помощью FIREBASE_TOKEN. Этот способ менее безопасен, чем Application Default Credentials, и больше не рекомендуется.
На компьютере с браузером установите Firebase CLI.
Запустите процесс входа, выполнив следующую команду:
firebase login:ci
Перейдите по указанному URL и войдите в аккаунт Google.
Распечатайте новый токен обновления. Текущий сеанс CLI не будет затронут.
Сохраните полученный токен в системе непрерывной интеграции так, чтобы он был защищен, но доступен.
Используйте этот токен при выполнении команд
firebase. Вы можете использовать один из двух вариантов:Вариант 1. Сохраните токен как переменную среды
FIREBASE_TOKEN. Токен будет использован автоматически.Вариант 2. Запустите все команды
firebaseс флагом--token TOKENв системе непрерывной интеграции.
Порядок приоритета при загрузке токена: флаг, переменная среды, нужный проект Firebase.
Инициализация проекта Firebase
Для выполнения многих распространенных задач с помощью CLI, например развертывания в проекте Firebase, требуется каталог проекта. Вы создаете каталог проекта
с помощью команды firebase init. Каталог проекта обычно совпадает с корневым каталогом системы управления версиями. После выполнения команды firebase init в нем появится файл конфигурации firebase.json.
Чтобы инициализировать новый проект Firebase, выполните следующую команду в каталоге приложения:
firebase init
Команда firebase init поможет вам настроить каталог проекта и некоторые продукты Firebase. Во время инициализации проекта CLI Firebase попросит вас выполнить следующие задачи:
Выберите проект Firebase по умолчанию.
На этом шаге текущий каталог проекта связывается с проектом Firebase, чтобы команды, относящиеся к проекту (например,
firebase deploy), выполнялись в соответствующем проекте Firebase.Вы также можете связать несколько проектов Firebase (например, тестовый и рабочий) с одним каталогом проекта.
Выберите продукты Firebase, которые нужно настроить в проекте Firebase.
На этом шаге вам будет предложено задать конфигурации для определенных файлов выбранных продуктов или функций. Подробную информацию об этих конфигурациях можно найти в документации по конкретному продукту (например, Hosting или Authentication). Обратите внимание, что вы всегда можете запустить
firebase initпозже, чтобы настроить больше продуктов Firebase.
После завершения инициализации Firebase автоматически создает в корневом каталоге локального приложения два файла:
Файл конфигурации
firebase.json, в котором перечислены настройки проекта.Файл
.firebaserc, в котором хранятся псевдонимы проекта.
Файл firebase.json
Команда firebase init создает файл конфигурации firebase.json в корневом каталоге проекта.
Файл firebase.json необходим для развертывания объектов с помощью Firebase CLI, поскольку он указывает, какие файлы и настройки из каталога проекта развертываются в проекте Firebase (например, настройки Hosting, конфигурации поставщика Authentication, правила безопасности и конфигурация Cloud Functions).
Поскольку некоторые настройки можно задать как в каталоге проекта, так и в консоли Firebase, убедитесь, что вы устранили все возможные конфликты развертывания.
Вы можете настроить большинство параметров Firebase Hosting непосредственно в файле firebase.json. Однако для других сервисов Firebase, которые можно развернуть с помощью интерфейса командной строки Firebase, команда firebase init создает специальные файлы, в которых можно задать настройки для этих сервисов, например файл index.js для Cloud Functions. Вы также можете настроить хуки до и после развертывания в файле firebase.json.
Ниже приведен пример файла firebase.json с настройками для многих сервисов Firebase. В нем также демонстрируются такие функции, как Cloud Functions с несколькими базами кода, настройка Local Emulator Suite и шаблон Remote Config. Обратите внимание, что файл firebase.json для любого проекта будет содержать только конфигурации для сервисов Firebase, настроенных для этого конкретного проекта (например, только Firebase Hosting и Cloud Functions). Добавление ключа $schema позволяет выполнять проверку и автозаполнение во многих редакторах кода.
{
"$schema": "https://raw.githubusercontent.com/firebase/firebase-tools/master/schema/firebase-config.json",
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"cleanUrls": true,
"trailingSlash": false
},
"apphosting": {
"backendId": "my-app",
"rootDir": "backend",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
},
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"storage": {
"rules": "storage.rules"
},
"database": {
"rules": "database.rules.json"
},
"dataconnect": {
"source": "dataconnect",
"location": "us-central1"
},
"functions": [
{
"source": "functions",
"codebase": "default",
"ignore": [
"**/.*",
"**/node_modules/**"
],
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
}
],
"emulators": {
"auth": {
"port": 9099
},
"functions": {
"port": 5001
},
"firestore": {
"port": 8080
},
"hosting": {
"port": 5000
},
"storage": {
"port": 9199
},
"ui": {
"enabled": true,
"port": 4000
},
"singleProjectMode": true
},
"extensions": {
"my-storage-resizer": "firebase/storage-resize-images@^0.1.0"
},
"auth": {
"providers": {
"anonymous": true,
"emailPassword": true,
"googleSignIn": {
"oAuthBrandDisplayName": "My App",
"supportEmail": "support@myapp.com"
}
}
},
"remoteconfig": {
"template": "remoteconfig.template.json"
}
}
По умолчанию используется файл firebase.json, но вы можете указать другой файл конфигурации с помощью параметра --config PATH.
Конфигурация для нескольких баз данных Cloud Firestore
После выполнения команды firebase init файл firebase.json будет содержать один ключ firestore, соответствующий базе данных проекта по умолчанию, как показано в примере выше.
Если в проекте несколько баз данных Cloud Firestore, измените файл firebase.json, чтобы связать разные файлы Cloud Firestore Security Rules и файлы с индексами баз данных с каждой базой данных. Измените файл с помощью массива JSON, добавив по одной записи для каждой базы данных.
"firestore": [
{
"database": "(default)",
"rules": "firestore.default.rules",
"indexes": "firestore.default.indexes.json"
},
{
"database": "ecommerce",
"rules": "firestore.ecommerce.rules",
"indexes": "firestore.ecommerce.indexes.json"
}
],
Cloud Functions файл, который нужно игнорировать при развертывании
При развертывании функции CLI автоматически указывает список файлов в каталоге functions, которые следует игнорировать. Это предотвращает развертывание на сервере посторонних файлов, которые могут увеличить размер данных вашего развертывания.
Список файлов, игнорируемых по умолчанию, в формате JSON:
"ignore": [
".git",
".runtimeconfig.json",
"firebase-debug.log",
"firebase-debug.*.log",
"node_modules"
]
Если вы добавляете собственные значения для ignore в firebase.json, убедитесь, что вы сохранили (или добавили, если он отсутствует) список файлов, показанный в предыдущем списке.
Управление псевдонимами проектов
С одним каталогом можно связать несколько проектов Firebase.
Например, один проект Firebase можно использовать для подготовки, а другой – для выпуска. Используя разные среды проекта, вы можете проверять изменения перед развертыванием в рабочей среде. Команда firebase use позволяет переключаться
между псевдонимами, а также создавать новые.
Как добавить псевдоним проекта
Когда вы выбираете проект Firebase во время инициализации проекта, ему автоматически назначается псевдоним default. Однако если вы хотите, чтобы команды, относящиеся к определенному проекту, выполнялись в другом проекте Firebase, но при этом использовался тот же каталог проекта, выполните в каталоге проекта следующую команду:
firebase use --add
Эта команда предложит вам выбрать другой проект Firebase и назначить его в качестве псевдонима. Назначения псевдонимов записываются в файл .firebaserc в каталоге проекта.
Использовать псевдонимы проектов
Чтобы использовать назначенные псевдонимы проектов Firebase, выполните любую из следующих команд в каталоге проекта.
| Команда | Описание |
|---|---|
firebase use |
Посмотреть список псевдонимов, заданных для каталога проекта |
firebase use \ |
Указывает, что все команды должны выполняться в указанном проекте Firebase.
CLI использует этот проект как активный. |
firebase use --clear |
Очищает активный проект.
Прежде чем выполнять другие команды CLI, запустите |
firebase use \ |
Удаляет псевдоним из каталога проекта. |
Вы можете переопределить активный проект, передав флаг --project с любой командой CLI. Например, вы можете настроить CLI для работы с проектом Firebase, которому вы назначили псевдоним staging. Если вы хотите выполнить одну команду для проекта Firebase, которому вы назначили псевдоним prod, вы можете запустить, например, .
Управление исходным кодом и псевдонимы проектов
В общем случае файл .firebaserc следует добавить в систему контроля версий, чтобы у команды был доступ к псевдонимам проекта. Однако для проектов с ПО с открытым исходным кодом или начальных шаблонов обычно не следует регистрировать файл .firebaserc.
Если у вас есть проект разработки, который используете только вы, то вы можете либо передавать флаг --project с каждой командой, либо запускать firebase use PROJECT_ID, не назначая псевдоним проекту Firebase.
Как запустить и протестировать проект Firebase локально
Вы можете просматривать и тестировать проект Firebase на локальных URL, прежде чем развертывать его в рабочей среде. Если вы хотите протестировать только некоторые функции, укажите их в команде firebase serve через запятую.
Выполните следующую команду в корневом каталоге локального проекта, если вы хотите сделать следующее:
- Просмотр статического контента для приложения, размещенного в Firebase.
- Вы используете Cloud Functions для создания динамического контента для Firebase Hosting и хотите использовать рабочие (развернутые) HTTP-функции, чтобы эмулировать Hosting на локальном URL.
firebase serve --only hosting
Эмулируйте проект с помощью локальных HTTP-функций.
Чтобы эмулировать проект с помощью локальных HTTP-функций, выполните любую из следующих команд в каталоге проекта.
Чтобы эмулировать функции HTTP и хостинг для тестирования на локальных URL, используйте одну из следующих команд:
firebase serve
firebase serve --only functions,hosting // uses a flag
Чтобы эмулировать только функции HTTP, используйте следующую команду:
firebase serve --only functions
Тестируйте продукт на популярных в регионе устройствах
По умолчанию firebase serve отвечает только на запросы от localhost. Это означает, что вы сможете получить доступ к размещенному контенту из браузера на компьютере, но не с других устройств в сети. Если вы хотите протестировать сайт с других локальных устройств, используйте параметр --host, например:
firebase serve --host 0.0.0.0 // accepts requests to any host
Как развернуть проект Firebase
Интерфейс командной строки Firebase управляет развертыванием кода и ресурсов в проекте Firebase, в том числе:
- Новые выпуски на Firebase Hosting сайтах
- Новые, обновленные или существующие Cloud Functions for Firebase
- Новые или обновленные схемы и коннекторы для Firebase SQL Connect
- Security Rules (Firebase Realtime Database)
- Security Rules (Cloud Storage for Firebase)
- Security Rules (Cloud Firestore)
- Индексы для Cloud Firestore
- Конфигурация для режима "Authentication"
Чтобы развернуть проект Firebase, выполните следующую команду в каталоге проекта:
firebase deploy
При желании вы можете добавить комментарий к каждому развертыванию. Этот комментарий будет отображаться вместе с другой информацией о развертывании на странице Firebase Hosting вашего проекта. Пример:
firebase deploy -m "Deploying the best new feature ever."
При использовании команды firebase deploy учитывайте следующее:
Чтобы развернуть ресурсы из каталога проекта, в нем должен быть файл
firebase.json. Этот файл создается автоматически при выполнении командыfirebase init.По умолчанию
firebase deployсоздает выпуск для всех развертываемых ресурсов в каталоге проекта. Чтобы развернуть определенные сервисы или функции Firebase, используйте частичное развертывание.
Развертывание определенных сервисов Firebase
Если вы хотите развернуть только определенные сервисы или функции Firebase, используйте список, разделенный запятыми, в параметре команды firebase deploy. Например, следующая команда развертывает контент Firebase Hosting и Cloud Storage Security Rules.
firebase deploy --only hosting,storage
В таблице ниже перечислены сервисы и функции, доступные для частичного развертывания. Названия в параметрах соответствуют ключам в файле конфигурации firebase.json.
| Синтаксис флагов | Развернутый сервис или функция |
|---|---|
--only auth |
Конфигурация поставщика Authentication |
--only database |
Firebase Realtime Database Security Rules |
--only dataconnect |
Firebase SQL Connect схем и коннекторов |
--only firestore |
Cloud Firestore Security Rules и индексы для всех настроенных баз данных. |
--only functions |
Cloud Functions for Firebase |
--only hosting |
Firebase Hosting язык |
--only storage |
Cloud Storage for Firebase Security Rules |
Конфликты развертывания для Security Rules
Для Firebase Realtime Database, Cloud Storage for Firebase и Cloud Firestore вы можете определить Security Rules либо в каталоге вашего проекта в локальном хранилище браузера, либо в консоли Firebase.
Чтобы избежать конфликтов при развертывании, можно также использовать частичное развертывание и определить Security Rules только в консоли Firebase.
Как настроить задачи, выполняемые до и после развертывания
Вы можете подключить сценарии командной строки к команде firebase deploy, чтобы выполнять задачи до или после развертывания. Например, скрипт перед развертыванием может транспилировать код TypeScript в JavaScript, а хук после развертывания может уведомлять администраторов о развертывании нового контента сайта в Firebase Hosting.
Чтобы настроить хуки до или после развертывания, добавьте скрипты bash в файл конфигурации firebase.json. Вы можете задать короткие скрипты непосредственно в файле firebase.json или сослаться на другие файлы в каталоге проекта.
Например, следующий скрипт – это выражение firebase.json для задачи, которая выполняется после развертывания и отправляет сообщение в Slack при успешном развертывании в Firebase Hosting.
"hosting": {
// ...
"postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
"public": "public"
}
Файл скрипта messageSlack.sh находится в каталоге проекта и выглядит следующим образом:
curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}'
\https://SLACK_WEBHOOK_URLВы можете настроить хуки predeploy и postdeploy для любого из объектов, которые можно развернуть. Обратите внимание, что при выполнении команды firebase deploy запускаются все задачи, которые должны выполняться до и после развертывания и определены в файле firebase.json. Чтобы выполнить только задачи, связанные с определенным сервисом Firebase, используйте команды частичного развертывания.
Оба хука (predeploy и postdeploy) выводят стандартный вывод и потоки ошибок скриптов в терминал. В случае сбоя обратите внимание на следующее:
- Если хук predeploy не выполняется должным образом, развертывание отменяется.
- Если развертывание по какой-либо причине не удается, хуки postdeploy не запускаются.
Переменные среды
В скриптах, выполняемых в хуках predeploy и postdeploy, доступны следующие переменные среды:
$GCLOUD_PROJECT– идентификатор активного проекта.$PROJECT_DIR– корневой каталог, содержащий файлfirebase.json.$RESOURCE_DIR. (Только для скриптовhostingиfunctions.) Расположение каталога, содержащего ресурсы Hosting или Cloud Functions, которые нужно развернуть.
Квоты на развертывание
В редких случаях вы можете превысить квоту, ограничивающую скорость или объем операций развертывания Firebase. Например, при развертывании очень большого количества функций вы можете получить сообщение об ошибке HTTP 429 Quota. Чтобы решить эту проблему, попробуйте использовать частичное развертывание.
Как откатить развертывание
Вы можете откатить развертывание Firebase Hosting на странице Firebase Hosting проекта, выбрав действие Откатить для нужного выпуска.
Невозможно откатить выпуски Security Rules для Firebase Realtime Database, Cloud Storage for Firebase или Cloud Firestore.
Справочник по командам
В этом разделе описаны команды, доступные для следующих продуктов и сценариев использования:
- Административные команды CLI
- Команды для управления проектами
- Развертывание и локальная разработка
- Команды App Distribution
- Команды App Hosting
- Команды Authentication (управление пользователями)
- Команды Cloud Firestore
- Команды Cloud Functions for Firebase
- Команды Crashlytics
- Команды Extensions
- Команды издателя Extensions
- Команды Hosting
- Команды Realtime Database
- Команды Remote Config
- Команды SQL Connect
Административные команды CLI
| Команда | Описание |
|---|---|
help
|
Показать справочную информацию о CLI или определенных командах. |
init
|
Свяжите и настройте новый проект Firebase в текущем каталоге.
Эта команда создает файл конфигурации firebase.json
в текущем каталоге.
|
login
|
Выполните аутентификацию CLI с помощью аккаунта Google. Требуется доступ к веб-браузеру.
Чтобы войти в CLI в удаленной среде, где нет доступа к |
login:ci
|
Поддержка прекращена.
Вместо этого используйте Application Default Credentials с сервисным аккаунтом Google Cloud (GOOGLE_APPLICATION_CREDENTIALS).
Создайте токен аутентификации для использования в неинтерактивных средах. |
login:add
|
Войдите в дополнительный аккаунт Google. |
login:list
|
Получить список всех аутентифицированных аккаунтов Google. |
login:use \
|
Установите активный аккаунт Google. |
logout
|
Выйдите из аккаунта Google в CLI. |
open
|
Откройте браузер и перейдите к ресурсам проекта. |
projects:list
|
Посмотреть список всех проектов Firebase, к которым у вас есть доступ. |
use
|
Установите активный проект Firebase для CLI. Подробнее об управлении псевдонимами проектов… |
Команды для управления проектами
| Команда | Описание |
|---|---|
| Управление проектами Firebase | |
projects:addfirebase
|
Добавьте конфигурации и включите сервисы Firebase в существующем проекте Google Cloud. |
projects:create
|
Создайте новый проект Google Cloud, а затем добавьте в него конфигурации и включите сервисы, относящиеся к Firebase. |
projects:list
|
Посмотреть список всех проектов Firebase, к которым у вас есть доступ. |
| Управление приложениями Firebase (iOS, Android, веб-приложения) | |
apps:create
|
Создайте новое приложение Firebase. |
apps:list
|
Вывести список всех зарегистрированных приложений Firebase в активном проекте Firebase. |
apps:sdkconfig \
|
Вывести конфигурацию Firebase для указанного приложения Firebase.
Если CLI работает в неинтерактивном режиме:
Эта команда поддерживает следующий необязательный флаг:
|
| Управление хешами сертификатов SHA (только для Android) | |
apps:android:sha:create \
|
Добавляет указанный хеш сертификата SHA в указанное приложение Firebase для Android. |
apps:android:sha:delete \
|
Удаляет указанный сертификат SHA (идентифицируемый по его SHA_ID из apps:android:sha:list) из указанного приложения Firebase для Android.
|
apps:android:sha:list \
|
Выводит список всех хешей сертификатов SHA для указанного приложения Firebase для Android. |
Развертывание и локальная разработка
Эти команды позволяют развертывать проект Firebase и взаимодействовать с ним.
| Команда | Описание |
|---|---|
deploy
|
Разверните код и ресурсы из каталога проекта в активном проекте Firebase.
Для выполнения этой команды в каталоге проекта должен быть файл конфигурации Подробнее о развертывании в проекте Firebase… |
serve
|
Запустите локальный сервер, чтобы протестировать конфигурацию Firebase Hosting и/или локальный HTTP-запрос Cloud Functions (например, с помощью
Для выполнения этой команды в каталоге проекта должен быть файл конфигурации Подробнее о локальном показе и тестировании… |
Команды App Distribution
| Команда | Описание |
|---|---|
appdistribution:distribute \
|
Загрузить указанный двоичный файл выпуска (.apk, .aab или .ipa) и сделать его доступным для тестировщиков указанного приложения Firebase.
|
appdistribution:testers:add \
|
Добавьте одного или нескольких тестировщиков (указанных в виде разделенных пробелами EMAILS) в активный проект Firebase. Если параметр EMAILS не указан, необходимо передать Эта команда только добавляет тестировщиков, которых ещё нет в проекте. Она не удаляет и не перезаписывает существующих тестировщиков. Эта команда поддерживает следующие необязательные флаги:
|
appdistribution:testers:remove \
|
Удалить тестировщиков (указываются через пробел в EMAILS) из активного проекта Firebase. Если параметр EMAILS опущен, необходимо передать Эта команда поддерживает следующие необязательные флаги:
|
appdistribution:testers:list
|
Показать список тестировщиков в активном проекте Firebase. |
appdistribution:groups:create \
|
Создать группу тестировщиков с указанным DISPLAY_NAME и необязательным GROUP_ALIAS.
Если GROUP_ALIAS не указан, псевдоним автоматически генерируется из DISPLAY_NAME. |
appdistribution:groups:delete \
|
Удалить группу тестировщиков с указанным псевдонимом. |
appdistribution:groups:list
|
Список всех групп тестировщиков в активном проекте Firebase. |
Команды App Hosting
| Команда | Описание |
|---|---|
apphosting:backends:create \
|
Создайте набор управляемых ресурсов, связанных с одной базой кода, которая составляет серверную часть App Hosting. Эта команда поддерживает следующие необязательные (но рекомендуемые) флаги:
Эта команда также поддерживает следующие необязательные флаги:
Если CLI работает в неинтерактивном режиме, то требуются оба параметра: |
apphosting:backends:get \
|
Получить сведения, включая общедоступный URL, указанного бэкенда App Hosting.
Если в нескольких регионах есть серверная инфраструктура с указанным значением BACKEND_ID, CLI регистрирует предупреждение и выводит первую соответствующую серверную инфраструктуру (обратите внимание, что эта команда не поддерживает флаг |
apphosting:backends:list
|
Вывести список всех активных бэкендов App Hosting в активном проекте Firebase. |
apphosting:backends:delete \
|
Удалите указанный серверный компонент App Hosting.
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги:
Если в нескольких регионах есть серверная часть с указанным BACKEND_ID, CLI в интерактивном режиме предложит выбрать, какие серверные части нужно удалить. Если переданы |
apphosting:rollouts:create \
|
Создать вручную запуск для указанного бэкенда App Hosting. Эта команда поддерживает следующие необязательные, взаимоисключающие флаги. Если ни один из них не указан, CLI предложит выбрать ветку из списка. В неинтерактивном режиме необходимо указать один из этих флагов.
Если несколько регионов содержат серверную часть с указанным BACKEND_ID, эта команда завершается ошибкой как в интерактивном, так и в неинтерактивном режимах (обратите внимание, что эта команда не поддерживает флаг |
apphosting:secrets:set \
|
Создайте или обновите секрет в Google Cloud Secret Manager с указанным SECRET_NAME. Эта команда поддерживает следующий необязательный (но рекомендуемый) флаг:
Эта команда также поддерживает следующий необязательный флаг:
Если CLI работает в неинтерактивном режиме, передайте |
apphosting:secrets:grantaccess \
|
Предоставьте разрешения на доступ к указанным секретам набору адресов электронной почты пользователей или групп или сервисному аккаунту бэкенда. Затем App Hosting может получить доступ к секретам во время сборки или выполнения.
Вы можете передать одно или несколько значений SECRET_NAME, разделенных запятой. Необходимо указать либо Предоставьте доступ группе пользователей или адресов электронной почты:
Предоставьте доступ к сервисному аккаунту бэкенда:
|
apphosting:secrets:revokeaccess \
|
Отзовите разрешения на доступ к указанным секретам у набора адресов электронной почты пользователей или групп или у сервисного аккаунта бэкенда.
Вы можете передать одно или несколько значений SECRET_NAME, разделенных запятой. Необходимо указать либо Отменить доступ для набора адресов электронной почты пользователей или групп:
Отзовите доступ у сервисного аккаунта бэкенда:
|
apphosting:secrets:describe \
|
Получите метаданные и версии для указанного названия секрета. |
apphosting:secrets:access \
|
Получить доступ к значению секрета с указанным названием в указанной версии.
Если [@VERSION] не указан, по умолчанию используется последняя версия.
|
Команды Authentication (управление пользователями)
| Команда | Описание |
|---|---|
auth:export \
|
Экспортируйте аккаунты пользователей активного проекта Firebase в файл JSON или CSV. Подробную информацию можно найти на странице auth:import and auth:export. |
auth:import \
|
Импортируйте аккаунты пользователей из файла JSON или CSV в активный проект Firebase. Подробную информацию можно найти на странице auth:import and auth:export. |
Команды Cloud Firestore
| Команда | Описание |
|---|---|
firestore:locations
|
Показать список доступных местоположений для экземпляров базы данных Cloud Firestore в активном проекте Firebase. Узнайте о доступных местоположениях для версии Standard, версии Enterprise и совместимости с MongoDB. |
firestore:databases:create \
|
Создайте экземпляр базы данных Cloud Firestore (в нативном режиме) в указанном местоположении.
Эта команда поддерживает следующие необязательные флаги:
|
firestore:databases:list |
Вывести список всех экземпляров базы данных Cloud Firestore в активном проекте Firebase. |
firestore:databases:get \
|
Получение конфигурации базы данных для указанного экземпляра базы данных Cloud Firestore.
В таблице будут указаны значения |
firestore:databases:update \
|
Обновите конфигурацию базы данных указанного экземпляра базы данных Cloud Firestore. Необходимо указать хотя бы один флаг (для пропущенных флагов сохраняются текущие настройки). Эта команда поддерживает следующие флаги:
|
firestore:databases:delete \
|
Удалить указанный экземпляр базы данных Cloud Firestore.
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте флаг |
firestore:indexes
|
Получите список всех индексов для экземпляра базы данных Cloud Firestore. Эта команда поддерживает следующий необязательный флаг:
|
firestore:delete \
|
Удаление документов по указанному пути к базе данных (PATH) из экземпляра базы данных Cloud Firestore.
Параметр PATH обязателен, если не передается Обратите внимание, что за удаление данных Cloud Firestore с помощью CLI взимается плата за чтение и удаление. Подробнее о платежах в Cloud Firestore… Эта команда поддерживает следующие необязательные флаги:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
Команды Cloud Functions for Firebase
Подробную информацию вы найдете в документации по настройке среды.
| Команда | Описание |
|---|---|
functions:config:export
|
Экспортируйте устаревшую конфигурацию среды выполнения Эта команда поддерживает следующие необязательные флаги:
|
functions:delete \
|
Удаляет одну или несколько указанных функций из активного проекта Firebase.
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
functions:list
|
Вывести список всех развернутых функций в активном проекте Firebase. |
functions:log
|
Чтение журналов всех развернутых функций Cloud Functions в активном проекте Firebase. |
functions:secrets:access \
|
Получить доступ к значению секрета с указанным названием в указанной версии.
Если [@VERSION] не указан, по умолчанию используется последняя версия.
|
functions:secrets:destroy \
|
Удалить указанный секрет указанной версии.
Перед выполнением действия CLI показывает запрос на подтверждение. В неинтерактивном режиме подтверждение выполняется автоматически без |
functions:secrets:get \
|
Получите метаданные и версии для указанного названия секрета. |
functions:secrets:prune
|
Удалите все неиспользуемые секреты в активном проекте Firebase. |
functions:secrets:set \
|
Создать или обновить указанный секрет. |
functions:shell
|
Запустите локальную интерактивную оболочку для тестирования функций. |
functions:config:clone \
|
Поддержка прекращена.
Этот параметр по умолчанию отключен. Чтобы использовать эту команду, сначала выполните |
functions:config:get
|
Поддержка прекращена.
Получите существующие значения конфигурации активного Cloud Functions проекта Firebase. |
functions:config:set \
|
Поддержка прекращена.
Этот параметр по умолчанию отключен. Чтобы использовать эту команду, сначала выполните |
functions:config:unset \
|
Поддержка прекращена.
Этот параметр отключен по умолчанию. Чтобы использовать эту команду, сначала выполните |
Команды Crashlytics
| Команда | Описание |
|---|---|
crashlytics:mappingfile:generateid \
|
Создать уникальный идентификатор файла сопоставления в указанном файле ресурсов Android (XML). |
crashlytics:mappingfile:upload \
|
Загрузите файл сопоставления, совместимый с Proguard (TXT), для указанного приложения Firebase и свяжите его с идентификатором файла сопоставления, объявленным в указанном файле ресурсов Android (XML). |
crashlytics:symbols:upload \
|
Создайте файл символов, совместимый с Crashlytics, для сбоев нативных библиотек Android (например, Android NDK или сборок Android для Unity или Flutter) и загрузите его на серверы Firebase.
Эта команда поддерживается только на устройствах Android. Для dSYM-файлов iOS используйте скрипт |
Команды Extensions
| Команда | Описание |
|---|---|
ext
|
Показать информацию о том, как использовать команды Firebase Extensions.
Вывести список экземпляров расширений, установленных в активном проекте. |
ext:configure \
|
Измените значения параметров экземпляра расширения в манифесте расширения. |
ext:info \
|
Вывести подробную информацию о расширении. |
ext:install \
|
Добавьте новый экземпляр расширения в манифест расширения. |
ext:sdk:install \
|
Установите SDK для определения расширений в функциях. |
ext:list
|
Показать список всех экземпляров расширений, установленных в проекте Firebase.
Выведите идентификатор экземпляра для каждого расширения. |
ext:uninstall \
|
Удалите экземпляр расширения из манифеста расширения. |
ext:update \
|
Обновите экземпляр расширения до последней версии (или до указанной опубликованной версии UPDATE_SOURCE) в манифесте расширения. Обратите внимание, что для UPDATE_SOURCE локальные пути и URL не поддерживаются.
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить этот запрос в интерактивном режиме, можно передать |
ext:export
|
Экспортируйте все установленные экземпляры расширения из проекта в манифест расширения. |
Extensions команд издателя
| Команда | Описание |
|---|---|
ext:dev:init
|
Инициализирует скелетную базу кода для нового расширения в текущем каталоге. |
ext:dev:list \
|
Вывести список всех расширений, загруженных издателем. |
ext:dev:register
|
Отключено.
Регистрация новых идентификаторов профилей издателей больше не поддерживается. |
ext:dev:deprecate \
|
Объявить устаревшими версии расширения, соответствующие предикату версии.
Предикат версии может быть одной версией (например, 1.0.0) или диапазоном версий (например, >1.0.0).
Если предикат версии не указан, устаревшими считаются все версии расширения. |
ext:dev:undeprecate \
|
Отменить прекращение поддержки версий расширения, соответствующих предикату версии.
Предикат версии может быть одной версией (например, 1.0.0)
или диапазоном версий (например, >1.0.0).
|
ext:dev:upload \
|
Загрузите новую версию расширения. |
ext:dev:usage \
|
Показывать количество установок и показатели использования для расширений, загруженных издателем. |
Команды Hosting
| Команда | Описание |
|---|---|
hosting:disable
|
Прекратить показ трафика Firebase Hosting для сайта Hosting. После выполнения этой команды при попытке перейти по URL Hosting будет появляться сообщение "Сайт не найден". Эта команда поддерживает следующий необязательный флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
| Управление сайтами (Hosting) | |
hosting:sites:create \
|
Создать новый сайт Hosting, используя указанный SITE_ID. Если CLI работает в неинтерактивном режиме, то требуется SITE_ID. Эта команда поддерживает следующий необязательный флаг:
|
hosting:sites:delete \
|
Удалить указанный сайт Hosting.
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
hosting:sites:get \
|
Получение сведений об указанном сайте Hosting.
В выходных данных таблицы указывается идентификатор сайта, URL по умолчанию и идентификатор веб-приложения Firebase (если оно связано). Дополнительные метаданные (например, является ли сайт |
hosting:sites:list
|
Вывести список всех сайтов Hosting в активном проекте Firebase. |
| Управление каналами предварительного просмотра | |
hosting:channel:create \
|
Создать новый канал предварительного просмотра для сайта Hosting с помощью указанного CHANNEL_ID.
Если CLI работает в неинтерактивном режиме, то требуется CHANNEL_ID. Эта команда поддерживает следующий необязательный флаг:
|
hosting:channel:delete \
|
Удаляет указанный канал предварительного просмотра. Активный канал сайта удалить нельзя. Эта команда поддерживает следующий необязательный флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
hosting:channel:deploy \
|
Развертывание контента и конфигурации Hosting в указанном канале предварительного просмотра.
Эта команда поддерживает следующий необязательный флаг:
|
hosting:channel:list
|
Получите список всех каналов (включая канал live) для сайта Hosting. Эта команда поддерживает следующий необязательный флаг:
|
hosting:channel:open \
|
Открывает в браузере URL указанного канала или возвращает URL, если открыть его в браузере невозможно. Если CLI работает в неинтерактивном режиме, то требуется CHANNEL_ID. Эта команда поддерживает следующий необязательный флаг:
|
| Клонирование версий | |
hosting:clone \
|
Клонировать последнюю развернутую версию из указанного исходного канала в указанный целевой канал. Эта команда также выполняет развертывание на указанном целевом канале. Если целевой канал ещё не существует, эта команда создает новый канал предварительного просмотра на целевом сайте Hosting, а затем развертывает его. |
hosting:clone \
|
Клонировать указанную версию в указанный целевой канал. Эта команда также выполняет развертывание на указанном целевом канале. Если целевой канал ещё не существует, эта команда создает новый канал предварительного просмотра на целевом сайте Hosting, а затем развертывает его. VERSION_ID можно найти на панели управления Hosting в консоли Firebase. |
Команды Realtime Database
Обратите внимание, что вы можете создать свой первый экземпляр Realtime Database по умолчанию в консоли Firebase, используя общий рабочий процесс firebase init или специальный рабочий процесс firebase init database.
После создания экземпляров вы можете управлять ими, как описано в разделе Управление определенными экземплярами и взаимодействие с ними с помощью CLI.
| Команда | Описание |
|---|---|
database:get \
|
Получить данные из указанного местоположения базы данных (PATH) для экземпляра Realtime Database и показать их в формате JSON. Поддерживает запросы к проиндексированным данным. Эта команда поддерживает следующий необязательный флаг:
|
database:instances:create \
|
Создает экземпляр Realtime Database с указанным DATABASE_NAME в указанном местоположении. Эта команда поддерживает следующий необязательный (но рекомендуемый) флаг:
Эту команду нельзя использовать для создания экземпляра Realtime Database по умолчанию для активного проекта Firebase. Если в проекте нет экземпляров Realtime Database, вам будет предложено запустить процесс |
database:instances:list
|
Перечислить все экземпляры Realtime Database в активном проекте Firebase. Эта команда поддерживает следующий необязательный флаг:
|
database:profile
|
Создайте профиль операций для экземпляра Realtime Database.
Эта команда поддерживает следующий необязательный флаг:
|
database:push \
|
Добавление новых данных в список в указанном местоположении базы данных (PATH) в экземпляре Realtime Database.
Принимает входные данные из файла (INFILE), stdin или флага Эта команда поддерживает следующий необязательный флаг:
|
database:remove \
|
Удалить все данные в указанном местоположении базы данных (PATH) в экземпляре Realtime Database. Эта команда поддерживает следующий необязательный флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
database:set \
|
Заменить все данные в указанном месте базы данных (PATH) в экземпляре Realtime Database.
Принимает входные данные из файла (INFILE), stdin или флага Эта команда поддерживает следующий необязательный флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
database:update \
|
Выполнить частичное обновление в указанном месте базы данных (PATH) в экземпляре Realtime Database.
Принимает входные данные из файла (INFILE), stdin или флага Эта команда поддерживает следующий необязательный флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
Команды Remote Config
Эти команды и примеры их использования подробно описаны в статье Как программно изменять Remote Config.
| Команда | Описание |
|---|---|
remoteconfig:versions:list
|
Список всех версий шаблона Remote Config. Эта команда поддерживает следующий необязательный флаг:
|
remoteconfig:get \
|
Получение сведений о шаблоне Remote Config указанной версии. Эта команда поддерживает следующие необязательные (но рекомендуемые) флаги:
|
remoteconfig:rollback \
|
Откатить шаблон Remote Config до указанной предыдущей версии. Эта команда поддерживает следующий необязательный (но рекомендуемый) флаг:
Перед выполнением действия в CLI появится запрос на подтверждение. Чтобы пропустить запрос на подтверждение (требуется в неинтерактивном режиме), передайте следующие флаги: |
remoteconfig:experiments:list
|
Показать все эксперименты Remote Config в активном проекте Firebase. Эта команда поддерживает следующие необязательные флаги:
|
remoteconfig:experiments:get \
|
Получение сведений об указанном эксперименте Remote Config.
В таблице будут указаны название ресурса, отображаемое название, статус ( |
remoteconfig:experiments:delete \
|
Удалить указанный эксперимент Remote Config.
Перед выполнением действия CLI показывает запрос на подтверждение. Флаги |
remoteconfig:rollouts:list
|
Вывести список всех развертываний Remote Config в активном проекте Firebase. Эта команда поддерживает следующие необязательные флаги:
|
remoteconfig:rollouts:get \
|
Получить сведения об указанном развертывании Remote Config. |
remoteconfig:rollouts:delete \
|
Удалить указанное внедрение Remote Config.
Перед выполнением действия CLI показывает запрос на подтверждение. Флаги |
Команды SQL Connect
Подробные сведения об этих командах и примеры их использования приведены в справочном руководстве по CLI SQL Connect.
| Команда | Описание |
|---|---|
dataconnect:services:list
|
Показать все развернутые сервисы SQL Connect в активном проекте Firebase. |
dataconnect:sql:diff
|
Показать различия между локальной схемой SQL Connect и схемой базы данных Cloud SQL. Эта команда поддерживает следующие необязательные флаги:
|
dataconnect:sql:migrate
|
Перенесите схему базы данных Cloud SQL, чтобы она соответствовала локальной схеме SQL Connect. Эта команда поддерживает следующие необязательные флаги:
В интерактивном режиме CLI перед выполнением действия показывает запрос на подтверждение. В неинтерактивном режиме недеструктивные переносы выполняются автоматически, а деструктивные изменения отменяются, если вы не передадите |
dataconnect:sql:grant \
|
Предоставляет указанную роль SQL_ROLE ( Эта команда поддерживает следующие необязательные флаги:
|
dataconnect:sdk:generate
|
Создавайте типизированные SDK для коннекторов SQL Connect. Эта команда поддерживает следующие необязательные флаги:
|