مرجع Firebase CLI

رابط خط فرمان Firebase ( GitHub ) ابزارهای متنوعی را برای مدیریت، مشاهده و استقرار در پروژه‌های فایربیس ارائه می‌دهد.

قبل از استفاده از رابط خط فرمان Firebase ، یک پروژه فایربیس راه‌اندازی کنید .

تنظیم یا به‌روزرسانی رابط خط فرمان (CLI)

نصب رابط خط فرمان Firebase

شما می‌توانید رابط خط فرمان Firebase CLI) را با استفاده از روشی که با سیستم عامل، سطح تجربه و/یا مورد استفاده شما مطابقت دارد، نصب کنید. صرف نظر از نحوه نصب رابط خط فرمان، به همان عملکرد و دستور firebase دسترسی خواهید داشت.

ویندوز، مک او اس، لینوکس

ویندوز

شما می‌توانید Firebase CLI را برای ویندوز با استفاده از یکی از گزینه‌های زیر نصب کنید:

گزینه توضیحات توصیه شده برای ...
دودویی مستقل فایل باینری مستقل را برای رابط خط فرمان (CLI) دانلود کنید. سپس، می‌توانید به فایل اجرایی دسترسی پیدا کنید تا یک پوسته (shell) باز شود که در آن می‌توانید دستور firebase را اجرا کنید. توسعه‌دهندگان جدید

توسعه‌دهندگانی که از Node.js استفاده نمی‌کنند یا با آن ناآشنا هستند
ان‌پی‌ام از npm (مدیر بسته‌های Node) برای نصب CLI و فعال کردن دستور firebase که به صورت سراسری در دسترس است، استفاده کنید. توسعه‌دهندگانی که از Node.js استفاده می‌کنند

دودویی مستقل

برای دانلود و اجرای فایل باینری برای Firebase CLI، مراحل زیر را دنبال کنید:

  1. فایل باینری Firebase CLI را برای ویندوز دانلود کنید.

  2. برای باز کردن یک پوسته که می‌توانید دستور firebase را در آن اجرا کنید، به فایل باینری دسترسی پیدا کنید.

  3. به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.

ان‌پی‌ام

برای استفاده از npm (مدیر بسته‌های Node) برای نصب Firebase CLI، مراحل زیر را دنبال کنید:

  1. Node.js را با استفاده از nvm-windows (مدیر نسخه Node) نصب کنید. نصب Node.js به طور خودکار ابزارهای دستوری npm را نصب می‌کند.

  2. با اجرای دستور زیر، Firebase CLI را از طریق npm نصب کنید:

    npm install -g firebase-tools

    این دستور، دستور firebase که به صورت سراسری در دسترس است را فعال می‌کند.

  3. به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.

macOS یا لینوکس

شما می‌توانید با استفاده از یکی از گزینه‌های زیر، Firebase CLI را برای macOS یا Linux نصب کنید:

گزینه توضیحات توصیه شده برای ...
اسکریپت نصب خودکار یک دستور واحد را اجرا کنید که به طور خودکار سیستم عامل شما را تشخیص دهد، آخرین نسخه CLI را دانلود کند، سپس دستور firebase که به صورت سراسری در دسترس است را فعال کند. توسعه‌دهندگان جدید

توسعه‌دهندگانی که از Node.js استفاده نمی‌کنند یا با آن ناآشنا هستند

استقرار خودکار در محیط CI/CD
دودویی مستقل فایل باینری مستقل را برای رابط خط فرمان (CLI) دانلود کنید. سپس، می‌توانید فایل باینری را متناسب با گردش کار خود پیکربندی و اجرا کنید. گردش‌های کاری کاملاً قابل تنظیم با استفاده از رابط خط فرمان (CLI)
ان‌پی‌ام از npm (مدیر بسته‌های Node) برای نصب CLI و فعال کردن دستور firebase که به صورت سراسری در دسترس است، استفاده کنید. توسعه‌دهندگانی که از Node.js استفاده می‌کنند

اسکریپت نصب خودکار

برای نصب Firebase CLI با استفاده از اسکریپت نصب خودکار، مراحل زیر را دنبال کنید:

  1. دستور cURL زیر را اجرا کنید:

    curl -sL https://firebase.tools | bash

    این اسکریپت به طور خودکار سیستم عامل شما را تشخیص می‌دهد، آخرین نسخه Firebase CLI را دانلود می‌کند، سپس دستور firebase که به صورت سراسری در دسترس است را فعال می‌کند.

  2. به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.

برای مثال‌ها و جزئیات بیشتر در مورد اسکریپت نصب خودکار، به کد منبع اسکریپت در firebase.tools مراجعه کنید.

دودویی مستقل

برای دانلود و اجرای فایل باینری مربوط به Firebase CLI که مخصوص سیستم عامل شماست، این مراحل را دنبال کنید:

  1. فایل باینری Firebase CLI را برای سیستم عامل خود دانلود کنید: macOS | Linux

  2. (اختیاری) دستور firebase که به صورت سراسری در دسترس است را تنظیم کنید.

    1. با اجرای دستور chmod +x ./firebase_tools فایل باینری را قابل اجرا کنید.
    2. مسیر فایل باینری را به PATH خود اضافه کنید.
  3. به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.

ان‌پی‌ام

برای استفاده از npm (مدیر بسته‌های Node) برای نصب Firebase CLI، مراحل زیر را دنبال کنید:

  1. Node.js را با استفاده از nvm (مدیر نسخه Node) نصب کنید.
    نصب Node.js به طور خودکار ابزارهای دستوری npm را نصب می‌کند.

  2. با اجرای دستور زیر، Firebase CLI را از طریق npm نصب کنید:

    npm install -g firebase-tools

    این دستور، دستور firebase که به صورت سراسری در دسترس است را فعال می‌کند.

  3. به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.

وارد شوید و Firebase CLI را آزمایش کنید

پس از نصب رابط خط فرمان (CLI)، باید احراز هویت کنید. سپس می‌توانید با فهرست کردن پروژه‌های Firebase خود، احراز هویت را تأیید کنید.

  1. با استفاده از حساب گوگل خود و با اجرای دستور زیر وارد Firebase شوید:

    firebase login

    این دستور دستگاه محلی شما را به Firebase متصل می‌کند و به شما امکان دسترسی به پروژه‌های Firebase را می‌دهد.

  2. با فهرست کردن پروژه‌های Firebase خود، بررسی کنید که CLI به درستی نصب شده و به حساب کاربری شما دسترسی دارد. دستور زیر را اجرا کنید:

    firebase projects:list

    لیست نمایش داده شده باید همان پروژه‌های Firebase فهرست شده در کنسول Firebase باشد.

به آخرین نسخه CLI به‌روزرسانی کنید

به طور کلی، شما می‌خواهید از جدیدترین نسخه Firebase CLI استفاده کنید.

نحوه‌ی به‌روزرسانی نسخه‌ی CLI به سیستم عامل شما و نحوه‌ی نصب CLI بستگی دارد.

ویندوز

مک‌او‌اس

  • اسکریپت نصب خودکار : curl -sL https://firebase.tools | upgrade=true bash را اجرا کنید.

  • فایل باینری مستقل : نسخه جدید را دانلود کنید ، سپس آن را در سیستم خود جایگزین کنید

  • npm : دستور npm install -g firebase-tools را اجرا کنید.

لینوکس

  • اسکریپت نصب خودکار : curl -sL https://firebase.tools | upgrade=true bash را اجرا کنید.

  • فایل باینری مستقل : نسخه جدید را دانلود کنید ، سپس آن را در سیستم خود جایگزین کنید

  • npm : دستور npm install -g firebase-tools را اجرا کنید.

رابط خط Firebase حذف نصب کنید

نحوه‌ی حذف نصب CLI به سیستم عامل شما و نحوه‌ی نصب CLI بستگی دارد.

ویندوز

  • فایل باینری مستقل : فایل باینری firebase.exe که دانلود کرده‌اید را حذف کنید.
  • npm : دستور npm uninstall -g firebase-tools را اجرا کنید.

مک‌او‌اس

  • اسکریپت نصب خودکار : curl -sL https://firebase.tools | uninstall=true bash را اجرا کنید.

  • فایل باینری مستقل : فایل باینری firebase که دانلود کرده‌اید را حذف کنید. اگر مکان آن را به متغیر محیطی PATH خود اضافه کرده‌اید، حتماً آن را حذف کنید.

  • npm : دستور npm uninstall -g firebase-tools را اجرا کنید.

لینوکس

  • اسکریپت نصب خودکار : curl -sL https://firebase.tools | uninstall=true bash را اجرا کنید.

  • فایل باینری مستقل : فایل باینری firebase که دانلود کرده‌اید را حذف کنید. اگر مکان آن را به متغیر محیطی PATH خود اضافه کرده‌اید، حتماً آن را حذف کنید.

  • npm : دستور npm uninstall -g firebase-tools را اجرا کنید.

استفاده از رابط خط فرمان (CLI) با سیستم‌های CI

توصیه می‌کنیم هنگام استفاده از رابط خط فرمان (CLI) با سیستم‌های CI، با استفاده از اعتبارنامه‌های پیش‌فرض برنامه (Application Default Credentials) احراز هویت کنید.

(توصیه می‌شود) از اعتبارنامه‌های پیش‌فرض برنامه استفاده کنید

رابط خط فرمان Firebase CLI) در صورت تنظیم شدن، اعتبارنامه‌های پیش‌فرض برنامه (Application Default Credentials) را شناسایی و از آنها استفاده می‌کند. ساده‌ترین راه برای احراز هویت رابط خط فرمان در CI و سایر محیط‌های بدون سر (headless)، تنظیم اعتبارنامه‌های پیش‌فرض برنامه (Application Default Credentials) است.

(قدیمی) از FIREBASE_TOKEN استفاده کنید

روش دیگر، احراز هویت با استفاده از FIREBASE_TOKEN است. این روش نسبت به Application Default Credentials امنیت کمتری دارد و دیگر توصیه نمی‌شود.

  1. روی دستگاهی که مرورگر دارد، Firebase CLI را نصب کنید .

  2. با اجرای دستور زیر، فرآیند ورود به سیستم را آغاز کنید:

    firebase login:ci
  3. به آدرس اینترنتی ارائه شده مراجعه کنید، سپس با استفاده از یک حساب گوگل وارد شوید.

  4. یک نشانه به‌روزرسانی جدید چاپ کن. جلسه فعلی CLI تحت تأثیر قرار نخواهد گرفت.

  5. توکن خروجی را به روشی امن اما قابل دسترس در سیستم CI خود ذخیره کنید.

  6. هنگام اجرای دستورات firebase از این توکن استفاده کنید. می‌توانید از یکی از دو گزینه زیر استفاده کنید:

    • گزینه ۱: توکن را به عنوان متغیر محیطی FIREBASE_TOKEN ذخیره کنید. سیستم شما به طور خودکار از توکن استفاده خواهد کرد.

    • گزینه ۲: تمام دستورات firebase را با پرچم --token TOKEN در سیستم CI خود اجرا کنید.
      این ترتیب اولویت برای بارگذاری توکن است: پرچم، متغیر محیطی، پروژه Firebase مورد نظر.

یک پروژه Firebase را مقداردهی اولیه کنید

بسیاری از وظایف رایج که با استفاده از رابط خط فرمان (CLI) انجام می‌شوند، مانند استقرار در یک پروژه Firebase، به یک دایرکتوری پروژه نیاز دارند. شما با استفاده از دستور firebase init یک دایرکتوری پروژه ایجاد می‌کنید. دایرکتوری پروژه معمولاً همان دایرکتوری ریشه کنترل منبع شماست و پس از اجرای firebase init ، این دایرکتوری حاوی یک فایل پیکربندی firebase.json است.

برای مقداردهی اولیه یک پروژه جدید Firebase، دستور زیر را از داخل دایرکتوری برنامه خود اجرا کنید:

firebase init

دستور firebase init شما را در تنظیم دایرکتوری پروژه و برخی از محصولات Firebase راهنمایی می‌کند. در طول راه‌اندازی پروژه، رابط خط فرمان 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) مورد نیاز است، زیرا مشخص می‌کند کدام فایل‌ها و تنظیمات از دایرکتوری پروژه شما به پروژه فایربیس شما مستقر می‌شوند (مانند تنظیمات Hosting ، پیکربندی‌های ارائه‌دهنده Authentication ، قوانین امنیتی و پیکربندی Cloud Functions ). از آنجایی که برخی از تنظیمات را می‌توان در دایرکتوری پروژه یا کنسول Firebase تعریف کرد، مطمئن شوید که هرگونه تداخل احتمالی در استقرار را برطرف کرده‌اید.

شما می‌توانید اکثر گزینه‌های Firebase Hosting مستقیماً در فایل firebase.json پیکربندی کنید. با این حال، برای سایر سرویس‌های فایربیس که می‌توانند با Firebase CLI مستقر شوند ، دستور firebase init فایل‌های خاصی ایجاد می‌کند که می‌توانید تنظیمات مربوط به آن سرویس‌ها را در آنها تعریف کنید، مانند فایل index.js برای Cloud Functions . همچنین می‌توانید قلاب‌های predeploy یا postdeploy را در فایل 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 را برای نادیده گرفتن مشخص می‌کند. این کار از استقرار فایل‌های اضافی در backend که می‌توانند حجم داده‌های استقرار شما را افزایش دهند، جلوگیری می‌کند.

لیست فایل‌هایی که به طور پیش‌فرض نادیده گرفته می‌شوند و در قالب 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 دیگر انتخاب کنید و آن را به عنوان نام مستعار (alias) تعیین کنید. نام‌های مستعار در یک فایل .firebaserc در داخل دایرکتوری پروژه شما نوشته می‌شوند.

استفاده از نام‌های مستعار پروژه

برای استفاده از نام‌های مستعار اختصاص داده شده به پروژه‌های Firebase، هر یک از دستورات زیر را از داخل دایرکتوری پروژه خود اجرا کنید.

فرمان توضیحات
firebase use مشاهده لیستی از نام‌های مستعار تعریف‌شده برای دایرکتوری پروژه شما
firebase use \
PROJECT_ID|ALIAS
تمام دستورات را برای اجرا در برابر پروژه Firebase مشخص شده هدایت می‌کند.
رابط خط فرمان (CLI) از این پروژه به عنوان "پروژه فعال" استفاده می‌کند.
firebase use --clear پروژه فعال را پاک می‌کند.

قبل از اجرای سایر دستورات CLI، firebase use PROJECT_ID|ALIAS .

firebase use \
--unalias PROJECT_ALIAS
یک نام مستعار را از دایرکتوری پروژه شما حذف می‌کند.

شما می‌توانید با ارسال فلگ --project به هر دستور CLI، آنچه را که به عنوان پروژه فعال استفاده می‌شود، لغو کنید. به عنوان مثال: می‌توانید CLI خود را طوری تنظیم کنید که روی یک پروژه Firebase که نام مستعار staging به آن اختصاص داده‌اید، اجرا شود. اگر می‌خواهید یک دستور واحد را روی پروژه Firebase که نام مستعار prod به آن اختصاص داده‌اید، اجرا کنید، می‌توانید مثلاً firebase deploy --project=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 CLI) مدیریت استقرار کد و دارایی‌ها را در پروژه فایربیس شما بر عهده دارد، از جمله:

  • نسخه‌های جدید سایت‌های 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، از partial deployment استفاده کنید .

سرویس‌های خاص Firebase را مستقر کنید

اگر فقط می‌خواهید سرویس‌ها یا ویژگی‌های خاصی از Firebase را مستقر کنید، می‌توانید از یک لیست جدا شده با کاما در یک پرچم در دستور firebase deploy استفاده کنید. به عنوان مثال، دستور زیر محتوای Firebase Hosting و Cloud Storage Security Rules را مستقر می‌کند.

firebase deploy --only hosting,storage

جدول زیر سرویس‌ها و ویژگی‌های موجود برای استقرار جزئی را فهرست می‌کند. نام‌های موجود در پرچم‌ها (flags) با کلیدهای موجود در فایل پیکربندی firebase.json شما مطابقت دارند.

نحو پرچم سرویس یا ویژگی مستقر شده
--only auth پیکربندی ارائه دهنده Authentication
--only database Firebase Realtime Database Security Rules
--only dataconnect طرحواره‌ها و کانکتورهای Firebase SQL Connect
--only firestore Security Rules و شاخص‌های امنیتی Cloud Firestore برای همه پایگاه‌های داده پیکربندی شده
--only functions Cloud Functions for Firebase
--only hosting محتوای Firebase Hosting
--only storage Security Rules Cloud Storage for Firebase

تداخلات استقرار برای Security Rules

برای Firebase Realtime Database ، Cloud Storage for Firebase و Cloud Firestore ، می‌توانید Security Rules یا در دایرکتوری پروژه محلی خود یا در کنسول Firebase تعریف کنید.

گزینه دیگر برای جلوگیری از تداخل در استقرار، استفاده از استقرار جزئی و تعریف فقط Security Rules در کنسول Firebase است.

تنظیم وظایف اسکریپت‌شده قبل و بعد از استقرار

شما می‌توانید اسکریپت‌های shell را به دستور firebase deploy متصل کنید تا وظایف predeploy یا postdeploy را انجام دهید. برای مثال، یک اسکریپت predeploy می‌تواند کد TypeScript را به جاوا اسکریپت transpile کند، و یک قلاب postdeploy می‌تواند مدیران را از محتوای جدید سایت که به Firebase Hosting ارسال می‌شود، مطلع کند.

برای تنظیم قلاب‌های predeploy یا postdeploy، اسکریپت‌های bash را به فایل پیکربندی firebase.json خود اضافه کنید. می‌توانید اسکریپت‌های مختصر را مستقیماً در فایل firebase.json تعریف کنید، یا می‌توانید به فایل‌های دیگری که در دایرکتوری پروژه شما هستند، ارجاع دهید.

برای مثال، اسکریپت زیر عبارت firebase.json برای یک وظیفه postdeploy است که پس از استقرار موفقیت‌آمیز به Firebase Hosting یک پیام Slack ارسال می‌کند.

"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 تمام وظایف predeploy و postdeploy تعریف شده در فایل firebase.json شما را فعال می‌کند. برای اجرای فقط وظایف مرتبط با یک سرویس خاص Firebase، از دستورات استقرار جزئی استفاده کنید .

هر دو قلاب predeploy و postdeploy خروجی استاندارد و جریان‌های خطای اسکریپت‌ها را در ترمینال چاپ می‌کنند. برای موارد خرابی، به موارد زیر توجه کنید:

  • اگر یک قلاب پیش از استقرار مطابق انتظار تکمیل نشود، استقرار لغو می‌شود.
  • اگر به هر دلیلی استقرار با شکست مواجه شود، قلاب‌های پس از استقرار فعال نمی‌شوند.

متغیرهای محیطی

در اسکریپت‌هایی که در قلاب‌های predeploy و postdeploy اجرا می‌شوند، متغیرهای محیطی زیر در دسترس هستند:

  • $GCLOUD_PROJECT : شناسه پروژه فعال
  • $PROJECT_DIR : دایرکتوری ریشه حاوی فایل firebase.json
  • $RESOURCE_DIR : (فقط برای اسکریپت‌های hosting و functions ) محل دایرکتوری که شامل منابع Hosting یا Cloud Functions است که باید مستقر شوند.

سهمیه‌های اعزام

این امکان وجود دارد (هرچند بعید است) که از سهمیه‌ای که نرخ یا حجم عملیات استقرار Firebase شما را محدود می‌کند، تجاوز کنید. برای مثال، هنگام استقرار تعداد بسیار زیادی از توابع، ممکن است پیام خطای HTTP 429 Quota دریافت کنید. برای حل چنین مشکلاتی، سعی کنید از استقرار جزئی استفاده کنید .

یک استقرار را به عقب برگردانید

شما می‌توانید با انتخاب عمل Rollback برای نسخه انتخاب شده، یک نسخه Firebase Hosting را از صفحه Firebase Hosting پروژه خود به نسخه قبلی برگردانید.

بازگرداندن نسخه‌های Security Rules برای Firebase Realtime Database ، Cloud Storage for Firebase یا Cloud Firestore امکان‌پذیر نیست.

مرجع فرمان

دستورات مدیریتی CLI

فرمان توضیحات
کمک اطلاعات راهنما در مورد رابط خط فرمان (CLI) یا دستورات خاص را نمایش می‌دهد.
اولیه یک پروژه Firebase جدید را در دایرکتوری فعلی مرتبط و راه‌اندازی می‌کند. این دستور یک فایل پیکربندی firebase.json در دایرکتوری فعلی ایجاد می‌کند.
ورود رابط خط فرمان (CLI) را با حساب گوگل شما تأیید می‌کند. به دسترسی به یک مرورگر وب نیاز دارد.
برای ورود به رابط خط فرمان (CLI) در محیط‌های راه دور که اجازه دسترسی به localhost را نمی‌دهند، از دستور زیر استفاده کنید: --no-localhost .
ورود:ci یک توکن احراز هویت برای استفاده در محیط‌های غیر تعاملی تولید می‌کند.
ورود: اضافه کردن یک حساب گوگل دیگر وارد سیستم می‌شود.
ورود: لیست تمام حساب‌های گوگل تأیید شده را فهرست می‌کند.
ورود: استفاده حساب گوگل فعال را تنظیم می‌کند.
خروج حساب گوگل شما را از رابط خط فرمان (CLI) خارج می‌کند.
باز یک مرورگر را برای دسترسی به منابع مرتبط با پروژه باز می‌کند.
پروژه‌ها: فهرست تمام پروژه‌های Firebase که به آنها دسترسی دارید را فهرست می‌کند.
استفاده پروژه فعال Firebase را برای CLI تنظیم می‌کند.
نام‌های مستعار پروژه را مدیریت می‌کند.

دستورات مدیریت پروژه

فرمان توضیحات
مدیریت پروژه‌های فایربیس
پروژه‌ها:افزودن‌فایربیس منابع Firebase را به یک پروژه Google Cloud موجود اضافه می‌کند.
پروژه‌ها:ایجاد یک پروژه جدید Google Cloud ایجاد می‌کند، سپس منابع Firebase را به پروژه جدید اضافه می‌کند.
پروژه‌ها: فهرست تمام پروژه‌های Firebase که به آنها دسترسی دارید را فهرست می‌کند.
مدیریت برنامه‌های Firebase (iOS، اندروید، وب)
برنامه‌ها: ایجاد یک برنامه Firebase جدید در پروژه فعال ایجاد می‌کند.
برنامه‌ها: فهرست برنامه‌های Firebase ثبت‌شده در پروژه فعال را فهرست می‌کند.
برنامه‌ها: پیکربندی sdk پیکربندی سرویس‌های گوگل یک برنامه Firebase را چاپ می‌کند.
تنظیمات: وب منسوخ شده. در عوض، apps:sdkconfig استفاده کنید و web به عنوان آرگومان platform مشخص کنید.
پیکربندی سرویس‌های گوگل یک برنامه وب Firebase را چاپ می‌کند.
مدیریت هش‌های گواهی SHA (فقط اندروید)
برنامه‌ها: اندروید: شا: ایجاد
شناسه برنامه SHA_HASH FIREBASE_APP_ID )
هش گواهی SHA مشخص شده را به برنامه اندروید Firebase مشخص شده اضافه می‌کند.
برنامه‌ها: اندروید: sha: حذف
شناسه برنامه SHA_HASH FIREBASE_APP_ID )
هش گواهی SHA مشخص شده را از برنامه اندروید Firebase مشخص شده حذف می‌کند.
برنامه‌ها: اندروید: sha: لیست \
FIREBASE_APP_ID
هش‌های گواهی SHA را برای برنامه اندروید Firebase مشخص شده لیست می‌کند.

استقرار و توسعه محلی

این دستورات به شما امکان می‌دهند سایت Firebase Hosting خود را مستقر کرده و با آن تعامل داشته باشید.

فرمان توضیحات
مستقر کردن کد و دارایی‌ها را از دایرکتوری پروژه شما به پروژه فعال منتقل می‌کند. برای Firebase Hosting ، یک فایل پیکربندی firebase.json مورد نیاز است.
خدمت کردن یک وب سرور محلی با پیکربندی Firebase Hosting شما راه‌اندازی می‌کند. برای Firebase Hosting ، یک فایل پیکربندی firebase.json مورد نیاز است.

دستورات App Distribution

فرمان توضیحات
توزیع برنامه: توزیع \
--برنامه FIREBASE_APP_ID
ساخت را در دسترس آزمایش‌کنندگان قرار می‌دهد.
appdistribution:آزمایش‌کنندگان:اضافه کردن آزمایش‌کنندگان را به پروژه اضافه می‌کند.
توزیع برنامه: آزمایش‌کنندگان: حذف آزمایش‌کنندگان را از پروژه حذف می‌کند.
توزیع برنامه: آزمایش‌کنندگان: لیست لیست آزمایش‌کنندگان در پروژه را نشان می‌دهد.
توزیع برنامه: گروه‌ها: ایجاد یک گروه آزمایش‌کننده ایجاد می‌کند.
توزیع برنامه: گروه‌ها: حذف یک گروه آزمایش‌کننده را حذف می‌کند.
توزیع برنامه: گروه‌ها: لیست گروه‌های آزمایش‌کننده در پروژه را فهرست می‌کند.

دستورات App Hosting

فرمان توضیحات
apphosting:backends:create \
PROJECT_ID \
--مکان REGION --شناسه APP_ID
مجموعه‌ای از منابع مدیریت‌شده مرتبط با یک کدبیس واحد را ایجاد می‌کند که شامل یک بک‌اند App Hosting است. به صورت اختیاری، یک برنامه وب Firebase موجود را با شناسه برنامه Firebase آن مشخص کنید.
apphosting:backends:get \
BACKEND_ID \
PROJECT_ID \
--منطقه REGION
جزئیات خاص، از جمله URL عمومی، مربوط به یک backend را بازیابی می‌کند.
apphosting:backends:list \
PROJECT_ID پروژه
لیستی از تمام backend های فعال مرتبط با یک پروژه را بازیابی می‌کند.
فایربیس apphosting:backends:delete \
BACKEND_ID \
PROJECT_ID \
--منطقه REGION
یک backend را از پروژه حذف می‌کند.
فایربیس apphosting:config:export \
PROJECT_ID \
--رازها ENVIRONMENT_NAME
اسرار را برای استفاده در شبیه‌سازی برنامه صادر می‌کند.
پیش‌فرض روی secretهای ذخیره‌شده در apphosting.yaml است، یا برای مشخص کردن هر محیطی که فایل apphosting. ENVIRONMENT_NAME .yaml از --secrets استفاده می‌کند.
فایربیس apphosting:rollouts:create \
BACKEND_ID \
--git_branch BRANCH_NAME \
--git_commit COMMIT_ID
یک rollout با فعال‌سازی دستی ایجاد می‌کند.
در صورت تمایل، آخرین کامیت به یک شاخه یا یک کامیت خاص را مشخص کنید. اگر هیچ گزینه‌ای ارائه نشود، از لیست شاخه‌ها انتخاب را درخواست می‌کند.
apphosting:secrets:set KEY --project PROJECT_ID \
--منطقه REGION \
--فایل داده DATA_FILE_PATH
مطالب محرمانه را در Secret Manager ذخیره می‌کند.
به صورت اختیاری مسیری را برای خواندن داده‌های مخفی ارائه دهید. برای خواندن داده‌های مخفی از ورودی استاندارد، آن را روی _ تنظیم کنید.
apphosting:secrets:grantaccess KEY BACKEND_ID \
PROJECT_ID \
--منطقه REGION
به حساب کاربری سرویس backend دسترسی به رمز ارائه شده را اعطا می‌کند تا App Hosting بتواند در زمان ساخت یا اجرا به آن دسترسی داشته باشد.
apphosting:secrets:describe KEY \
PROJECT_ID پروژه
فراداده‌های مربوط به یک راز و نسخه‌های آن را دریافت می‌کند.
فایربیس apphosting:secrets:access \
KEY[@version] \
PROJECT_ID پروژه
با دادن رمز و نسخه آن به یک مقدار مخفی دسترسی پیدا می‌کند. پیش‌فرض روی دسترسی به آخرین نسخه است.

دستورات Authentication (مدیریت کاربر)

فرمان توضیحات
مجوز: صادرات حساب‌های کاربری فعال پروژه را به یک فایل JSON یا CSV صادر می‌کند. برای جزئیات بیشتر، به صفحه auth:import و auth:export مراجعه کنید.
مجوز: وارد کردن حساب‌های کاربری را از یک فایل JSON یا CSV به پروژه فعال وارد می‌کند. برای جزئیات بیشتر، به صفحه auth:import و auth:export مراجعه کنید.

دستورات Cloud Firestore

فرمان توضیحات
فروشگاه آتش‌نشانی: مکان‌ها

مکان‌های موجود برای پایگاه داده Cloud Firestore خود را فهرست کنید.

firestore:databases:ایجاد DATABASE_ID

یک نمونه پایگاه داده در حالت بومی در پروژه Firebase خود ایجاد کنید.

این دستور پرچم‌های زیر را دریافت می‌کند:

  • --location <region name> برای مشخص کردن محل استقرار پایگاه داده. توجه داشته باشید که می‌توانید firebase firestore:locations را برای فهرست کردن مکان‌های موجود اجرا کنید. الزامی است .
  • --delete-protection <deleteProtectionState> برای اجازه دادن یا جلوگیری از حذف پایگاه داده مشخص شده. مقادیر معتبر عبارتند از ENABLED یا DISABLED . مقدار پیش‌فرض DISABLED است.
  • --point-in-time-recovery <PITRState> برای تنظیم فعال بودن بازیابی در نقطه زمانی. مقادیر معتبر ENABLED یا DISABLED هستند. پیش‌فرض DISABLED است. اختیاری.
  • --edition <edition> برای مشخص کردن سطح پایگاه داده. برای ویژگی‌های سازمانی، روی enterprise تنظیم کنید.
  • --firestore-data-access <ENABLED|DISABLED> (فقط سازمانی) برای کنترل در دسترس بودن API Firestore. مقدار پیش‌فرض روی ENABLED است.
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (فقط سازمانی) برای کنترل در دسترس بودن API سازگار با MongoDB. مقدار پیش‌فرض DISABLED است.
  • --realtime-updates <ENABLED|DISABLED> (فقط سازمانی) برای فعال یا غیرفعال کردن ویژگی "Watch" (بلادرنگ). نیاز به ENABLED بودن --firestore-data-access دارد. مقدار پیش‌فرض آن ENABLED است.
فایراستور:پایگاه‌های داده:لیست

پایگاه‌های داده را در پروژه Firebase خود فهرست کنید.

firestore:databases:دریافت DATABASE_ID

پیکربندی پایگاه داده را برای یک پایگاه داده مشخص شده در پروژه Firebase خود دریافت کنید.

برای پایگاه‌های داده سازمانی، خروجی شامل Edition ، Firestore Data Access ، MongoDB Compatible Data Access و وضعیت Realtime Updates است.

firestore:databases:به‌روزرسانی DATABASE_ID

پیکربندی پایگاه داده یک پایگاه داده مشخص شده در پروژه Firebase خود را به‌روزرسانی کنید.

حداقل یک پرچم مورد نیاز است. این دستور پرچم‌های زیر را دریافت می‌کند:

  • --delete-protection <deleteProtectionState> برای اجازه دادن یا جلوگیری از حذف پایگاه داده مشخص شده. مقادیر معتبر عبارتند از ENABLED یا DISABLED . مقدار پیش‌فرض DISABLED است.
  • --point-in-time-recovery <PITRState> برای تنظیم فعال بودن بازیابی در نقطه زمانی. مقادیر معتبر ENABLED یا DISABLED هستند. پیش‌فرض DISABLED است. اختیاری.
  • --firestore-data-access <ENABLED|DISABLED> (فقط سازمانی) برای کنترل در دسترس بودن API Firestore.
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (فقط سازمانی) برای کنترل در دسترس بودن API سازگار با MongoDB.
  • --realtime-updates <ENABLED|DISABLED> (فقط سازمانی) برای فعال یا غیرفعال کردن ویژگی "Watch" (بلادرنگ). نیاز به ENABLED بودن --firestore-data-access دارد.
firestore:databases:حذف DATABASE_ID

یک پایگاه داده را در پروژه Firebase خود حذف کنید.

فایراستور: ایندکس‌ها

فهرست کردن اندیس‌های یک پایگاه داده در پروژه Firebase شما.

این دستور، پرچم زیر را می‌گیرد:

  • --database DATABASE_ID برای مشخص کردن نام پایگاه داده‌ای که قرار است ایندکس‌ها در آن فهرست شوند. در صورت عدم ارائه، ایندکس‌ها برای پایگاه داده پیش‌فرض فهرست می‌شوند.
فروشگاه آتش: حذف

اسناد موجود در پایگاه داده پروژه فعال را حذف می‌کند. با استفاده از رابط خط فرمان (CLI)، می‌توانید به صورت بازگشتی تمام اسناد موجود در یک مجموعه را حذف کنید.

توجه داشته باشید که حذف داده‌های Cloud Firestore با رابط خط فرمان (CLI) هزینه‌های خواندن و حذف را به همراه دارد. برای اطلاعات بیشتر، به درک صورتحساب Cloud Firestore مراجعه کنید.

این دستور، پرچم زیر را می‌گیرد:

  • --database DATABASE_ID برای مشخص کردن نام پایگاه داده‌ای که اسناد از آن حذف می‌شوند. در صورت عدم تعیین، اسناد از پایگاه داده پیش‌فرض حذف می‌شوند. اختیاری.

Cloud Functions for Firebase

فرمان توضیحات
توابع: پیکربندی: کلون منسوخ شده.
محیط یک پروژه دیگر را در پروژه فعال Firebase شبیه‌سازی می‌کند.
توابع: پیکربندی: صادرات پیکربندی زمان اجرای پروژه فعال را به Google Cloud Secret Manager منتقل می‌کند.
توابع: پیکربندی: دریافت منسوخ شده.
مقادیر پیکربندی موجود Cloud Functions پروژه فعال را بازیابی می‌کند.
توابع: پیکربندی: تنظیم منسوخ شده.
مقادیر پیکربندی زمان اجرا Cloud Functions پروژه فعال را ذخیره می‌کند.
توابع: پیکربندی: غیرفعال منسوخ شده.
مقادیر را از پیکربندی زمان اجرای پروژه فعال حذف می‌کند.
توابع: حذف \
FUNCTION_NAME
تابع مشخص شده را حذف می‌کند.
توابع: لیست توابع مستقر شده را فهرست می‌کند.
توابع: ورود به سیستم گزارش‌ها را از Cloud Functions مستقر شده می‌خواند.
توابع:اسرار:دسترسی
SECRET_NAME
با دادن مقدار مخفی و نسخه آن، به یک مقدار مخفی دسترسی پیدا می‌کند.
توابع: اسرار: نابود کردن \
SECRET_NAME
یک راز را از بین می‌برد.
توابع:اسرار:دریافت \
SECRET_NAME
فراداده‌های مربوط به یک راز و نسخه‌های آن را دریافت می‌کند.
توابع: اسرار: هرس اسرار استفاده نشده را از بین می‌برد.
توابع:اسرار:مجموعه \
SECRET_NAME
یک راز ایجاد یا به‌روزرسانی می‌کند.
توابع: پوسته یک پوسته تعاملی محلی را برای آزمایش توابع آغاز می‌کند.

برای اطلاعات بیشتر، به مستندات پیکربندی محیط مراجعه کنید.

دستورات Crashlytics

فرمان توضیحات
crashlytics:mappingfile:generateid \
--resource-file= PATH/TO/ANDROID_RESOURCE.XML
یک شناسه‌ی منحصر به فرد برای فایل نگاشت در فایل منبع اندروید (XML) مشخص شده ایجاد می‌کند.
crashlytics:mappingfile:upload \
--app= FIREBASE_APP_ID
--resource-file= PATH/TO/ANDROID_RESOURCE.XML \
PATH/TO/MAPPING_FILE.TXT
یک فایل نگاشت (TXT) سازگار با Proguard را برای این برنامه آپلود می‌کند و آن را با شناسه فایل نگاشت اعلام شده در فایل منبع اندروید (XML) مشخص شده مرتبط می‌سازد.
crashlytics:symbols:upload \
--app= FIREBASE_APP_ID
PATH/TO/SYMBOLS
یک فایل نماد سازگار با Crashlytics برای خرابی‌های کتابخانه بومی در اندروید تولید می‌کند و آن را در سرورهای Firebase آپلود می‌کند.

دستورات SQL Connect

این دستورات و موارد استفاده آنها با جزئیات بیشتر در راهنمای مرجع SQL Connect CLI پوشش داده شده است.

فرمان توضیحات
اتصال داده: خدمات: لیست تمام سرویس‌های SQL Connect مستقر در پروژه Firebase شما را فهرست می‌کند.
اتصال داده: sql: تفاوت \
SERVICE_ID
برای سرویس مشخص‌شده، تفاوت‌های بین طرحواره محلی SQL Connect و طرحواره پایگاه داده Cloud SQL شما را نمایش می‌دهد.
اتصال داده: sql: انتقال
--نیروی \
SERVICE_ID
طرحواره پایگاه داده Cloud SQL شما را برای مطابقت با طرحواره SQL Connect محلی شما منتقل می‌کند.
اتصال داده: sql: اعطای
--نقش= ROLE \
--ایمیل= EMAIL \
SERVICE_ID
نقش SQL را به کاربر یا حساب کاربری سرویس مشخص شده اعطا می‌کند.
برای پرچم --role ، نقش SQL که باید اعطا شود یکی از موارد زیر است: owner ، writer یا reader .
برای پرچم --email ، آدرس ایمیل کاربر یا حساب سرویسی که می‌خواهید نقش را به آن اعطا کنید، ارائه دهید.
اتصال داده: sdk: تولید SDK های تایپ شده را برای کانکتورهای SQL Connect شما تولید می کند.

دستورات Extensions

فرمان توضیحات
خارجی اطلاعاتی در مورد نحوه استفاده از دستورات Firebase Extensions نمایش می‌دهد.
نمونه‌های افزونه نصب‌شده در پروژه فعال را فهرست می‌کند.
فایل ext:configure\
EXTENSION_INSTANCE_ID
مقادیر پارامترهای یک نمونه افزونه را در مانیفست افزونه شما دوباره پیکربندی می‌کند.
پسوند:اطلاعات \
PUBLISHER_ID/EXTENSION_ID
اطلاعات دقیقی درباره یک افزونه چاپ می‌کند.
فایل ext:install\
PUBLISHER_ID/EXTENSION_ID
یک نمونه جدید از یک افزونه را به مانیفست افزونه شما اضافه می‌کند.
فایل ext:sdk:install SDK ها را برای تعریف افزونه‌ها در توابع نصب می‌کند.
پسوند:لیست تمام نمونه‌های افزونه نصب شده در یک پروژه Firebase را لیست می‌کند.
شناسه نمونه را برای هر افزونه چاپ می‌کند.
ext:حذف نصب \
EXTENSION_INSTANCE_ID
یک نمونه افزونه را از مانیفست افزونه شما حذف می‌کند.
فایل ext:update\
EXTENSION_INSTANCE_ID
یک نمونه افزونه را به آخرین نسخه در مانیفست افزونه شما به‌روزرسانی می‌کند.
خروجی:ext تمام نمونه‌های افزونه نصب‌شده را از پروژه شما به مانیفست افزونه شما صادر می‌کند.

دستورات ناشر Extensions

فرمان توضیحات
ext:dev:init یک پایگاه کد اسکلتی را برای یک افزونه جدید در دایرکتوری فعلی مقداردهی اولیه می‌کند.
ext:dev:list \
PUBLISHER_ID
لیستی از تمام افزونه‌های آپلود شده توسط یک ناشر را چاپ می‌کند.
ext:dev:ثبت نام یک پروژه Firebase را به عنوان یک پروژه ناشر افزونه‌ها ثبت می‌کند.
ext:dev: منسوخ شده \
PUBLISHER_ID/EXTENSION_ID
VERSION_PREDICATE
نسخه‌های افزونه‌ای که با گزاره‌ی نسخه مطابقت دارند را منسوخ می‌کند .
یک گزاره نسخه می‌تواند یک نسخه واحد (مانند 1.0.0 ) یا طیفی از نسخه‌ها (مانند >1.0.0 ) باشد.
اگر هیچ نسخه‌ای ارائه نشود، تمام نسخه‌های آن افزونه را منسوخ می‌کند.
ext:dev:undeprecate \
PUBLISHER_ID/EXTENSION_ID
VERSION_PREDICATE
نسخه‌های افزونه‌ای که با گزاره‌ی نسخه مطابقت دارند را از رده خارج می‌کند .
یک گزاره نسخه می‌تواند یک نسخه واحد (مانند 1.0.0 ) یا طیفی از نسخه‌ها (مانند >1.0.0 ) باشد.
اگر هیچ نسخه‌ای ارائه نشده باشد، تمام نسخه‌های آن افزونه را از رده خارج می‌کند.
ext:dev:upload \
PUBLISHER_ID/EXTENSION_ID
نسخه جدیدی از یک افزونه را آپلود می‌کند.
ext:dev:usage \
PUBLISHER_ID
تعداد نصب و معیارهای استفاده از افزونه‌های آپلود شده توسط ناشر را نمایش می‌دهد.

دستورات Hosting

فرمان توضیحات
میزبانی: غیرفعال کردن

ترافیک Firebase Hosting را برای پروژه فعال Firebase متوقف می‌کند.

پس از اجرای این دستور، آدرس Hosting پروژه شما پیام "سایت یافت نشد" را نمایش می‌دهد.

مدیریت سایت‌های Hosting
میزبانی فایربیس:سایت‌ها:ایجاد
SITE_ID

با استفاده از SITE_ID مشخص شده، یک سایت Hosting جدید در پروژه فعال Firebase ایجاد می‌کند.

(اختیاری) با ارسال پرچم زیر، یک برنامه وب Firebase موجود را برای ارتباط با سایت جدید مشخص کنید: --app FIREBASE_APP_ID

میزبانی فایربیس:سایت‌ها:حذف
SITE_ID

سایت Hosting مشخص شده را حذف می‌کند

رابط خط فرمان (CLI) قبل از حذف سایت، یک پیام تأیید نمایش می‌دهد.

(اختیاری) با ارسال پرچم‌های زیر، از مرحله تأیید عبور کنید: -f یا --force

میزبانی فایربیس:سایت‌ها:دریافت
SITE_ID

اطلاعات مربوط به سایت Hosting مشخص شده را بازیابی می‌کند

میزبانی فایربیس: سایت‌ها: لیست

تمام سایت‌های Hosting برای پروژه فعال Firebase را فهرست می‌کند

مدیریت کانال‌های پیش‌نمایش
میزبانی فایربیس: کانال: ایجاد \
CHANNEL_ID

با استفاده از CHANNEL_ID مشخص شده، یک کانال پیش‌نمایش جدید در سایت Hosting پیش‌فرض ایجاد می‌کند.

این دستور در کانال اعمال نمی‌شود.

میزبانی فایربیس: کانال: حذف
CHANNEL_ID

کانال پیش‌نمایش مشخص‌شده را حذف می‌کند

شما نمی‌توانید کانال زنده یک سایت را حذف کنید.

میزبانی فایربیس: کانال: استقرار
CHANNEL_ID

محتوا و پیکربندی Hosting شما را در کانال پیش‌نمایش مشخص‌شده مستقر می‌کند.

اگر کانال پیش‌نمایش هنوز وجود نداشته باشد، این دستور قبل از استقرار در کانال، کانال را در سایت Hosting پیش‌فرض ایجاد می‌کند.

میزبانی فایربیس: کانال: لیست تمام کانال‌ها (از جمله کانال «زنده») را در سایت Hosting پیش‌فرض فهرست می‌کند
میزبانی فایربیس: کانال: باز
CHANNEL_ID
مرورگر را به آدرس اینترنتی کانال مشخص شده باز می‌کند یا اگر باز کردن در مرورگر امکان‌پذیر نباشد، آدرس اینترنتی را برمی‌گرداند
شبیه‌سازی نسخه
میزبانی فایربیس: کلون \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID
TARGET_SITE_ID : TARGET_CHANNEL_ID

آخرین نسخه پیاده‌سازی شده روی کانال «منبع» مشخص شده را به کانال «هدف» مشخص شده کپی می‌کند.

این دستور همچنین به کانال "هدف" مشخص شده ارسال می‌شود. اگر کانال "هدف" هنوز وجود نداشته باشد، این دستور قبل از ارسال به کانال، یک کانال پیش‌نمایش جدید در سایت Hosting "هدف" ایجاد می‌کند.

میزبانی فایربیس: کلون \
SOURCE_SITE_ID :@ VERSION_ID
TARGET_SITE_ID : TARGET_CHANNEL_ID

نسخه مشخص شده را به کانال "هدف" مشخص شده کلون می‌کند.

این دستور همچنین به کانال "هدف" مشخص شده ارسال می‌شود. اگر کانال "هدف" هنوز وجود نداشته باشد، این دستور قبل از ارسال به کانال، یک کانال پیش‌نمایش جدید در سایت Hosting "هدف" ایجاد می‌کند.

می‌توانید VERSION_ID در داشبورد Hosting کنسول Firebase پیدا کنید.

دستورات Realtime Database

توجه داشته باشید که می‌توانید نمونه اولیه و پیش‌فرض Realtime Database خود را در کنسول Firebase یا با استفاده از گردش کار عمومی firebase init یا گردش کار خاص firebase init database ایجاد کنید.

پس از ایجاد نمونه‌ها، می‌توانید آنها را همانطور که در مدیریت توضیح داده شده است مدیریت کنید و با استفاده از رابط خط فرمان (CLI) با نمونه‌های خاص تعامل داشته باشید .

فرمان توضیحات
پایگاه داده: دریافت داده‌ها را از پایگاه داده پروژه فعال دریافت کرده و به صورت JSON نمایش می‌دهد. از پرس‌وجو روی داده‌های فهرست‌بندی شده پشتیبانی می‌کند.
پایگاه داده:نمونه‌ها:ایجاد یک نمونه پایگاه داده با نام نمونه مشخص شده ایجاد می‌کند. گزینه --location را برای ایجاد یک پایگاه داده در یک منطقه مشخص می‌پذیرد. برای نام‌های منطقه که می‌توان از این گزینه استفاده کرد، به select locations for your project مراجعه کنید. اگر هیچ نمونه پایگاه داده‌ای برای پروژه فعلی وجود ندارد، از شما خواسته می‌شود که جریان firebase init را برای ایجاد یک نمونه اجرا کنید.
پایگاه داده:نمونه‌ها:لیست تمام نمونه‌های پایگاه داده برای این پروژه را فهرست می‌کند. گزینه --location را برای فهرست کردن پایگاه‌های داده در یک منطقه مشخص می‌پذیرد. برای نام‌های منطقه که می‌توان با این گزینه استفاده کرد، به select locations for your project مراجعه کنید.
پایگاه داده: پروفایل یک پروفایل از عملیات روی پایگاه داده پروژه فعال ایجاد می‌کند. برای جزئیات بیشتر، به انواع عملیات Realtime Database مراجعه کنید.
پایگاه داده: فشار داده‌های جدید را به لیستی در مکان مشخص شده در پایگاه داده پروژه فعال ارسال می‌کند. ورودی را از یک فایل، STDIN یا یک آرگومان خط فرمان دریافت می‌کند.
پایگاه داده: حذف تمام داده‌های موجود در یک مکان مشخص در پایگاه داده پروژه فعال را حذف می‌کند.
پایگاه داده: مجموعه تمام داده‌ها را در یک مکان مشخص در پایگاه داده پروژه فعال جایگزین می‌کند. ورودی را از یک فایل، STDIN یا یک آرگومان خط فرمان دریافت می‌کند.
پایگاه داده: به‌روزرسانی یک به‌روزرسانی جزئی را در یک مکان مشخص در پایگاه داده پروژه فعال انجام می‌دهد. ورودی را از یک فایل، STDIN یا یک آرگومان خط فرمان دریافت می‌کند.

دستورات Remote Config

فرمان توضیحات
remoteconfig:versions:list\
--تعداد NUMBER_OF_VERSIONS محدود کنید
ده نسخه اخیر قالب را فهرست می‌کند. برای بازگرداندن تمام نسخه‌های موجود، 0 را مشخص کنید، یا به صورت اختیاری از گزینه --limit برای محدود کردن تعداد نسخه‌های برگردانده شده استفاده کنید.
remoteconfig: دریافت
--v، شماره نسخه VERSION_NUMBER
--o، خروجی FILENAME
قالب را بر اساس نسخه (پیش‌فرض روی آخرین نسخه) دریافت می‌کند و گروه‌های پارامتر، پارامترها و نام‌های شرط و نسخه را در یک جدول خروجی می‌دهد. به صورت اختیاری، می‌توانید خروجی را با استفاده از -o, FILENAME ‎ در یک فایل مشخص شده بنویسید.
remoteconfig: بازگرداندن به حالت اولیه
--v، شماره نسخه VERSION_NUMBER
--نیروی
الگوی Remote Config را به شماره نسخه قبلی مشخص شده یا پیش‌فرض‌ها را به نسخه قبلی (نسخه فعلی -1) برمی‌گرداند. مگر اینکه از --force استفاده شود، قبل از ادامه به عقب‌گرد، Y/N را نمایش می‌دهد.
remoteconfig:experiments:list \
--عبارت EXPRESSION
--تعداد اندازه NUMBER
--pageToken TOKEN
تمام آزمایش‌های Remote Config برای یک پروژه را به همراه فیلتر اختیاری، تعداد آزمایش‌هایی که باید در هر صفحه برگردانده شوند (پیش‌فرض ۱۰) و توکن صفحه به عنوان نقطه شروع برای لیست، فهرست می‌کند.
remoteconfig:experiments:get \
EXPERIMENT_ID
جزئیات آزمایش مشخص شده Remote Config را دریافت می‌کند.
remoteconfig:experiments:delete \
EXPERIMENT_ID
آزمایش مشخص‌شده‌ی Remote Config را حذف می‌کند.
remoteconfig:rollouts:list \
--عبارت EXPRESSION
--تعداد اندازه NUMBER
--pageToken TOKEN
تمام فهرست‌های Remote Config برای یک پروژه را به همراه فیلتر اختیاری، تعداد فهرست‌هایی که باید در هر صفحه برگردانده شوند (پیش‌فرض ۱۰) و توکن صفحه به عنوان آفست شروع لیست، فهرست می‌کند.
remoteconfig:rollouts:get \
ROLLOUT_ID
جزئیات مربوط به بخش مشخص شده‌ی Remote Config را دریافت می‌کند.
remoteconfig:rollouts:delete \
ROLLOUT_ID
بخش مشخص شده‌ی Remote Config را حذف می‌کند.