رابط خط فرمان Firebase ( GitHub ) ابزارهای متنوعی را برای مدیریت، مشاهده و استقرار در پروژههای فایربیس ارائه میدهد.
قبل از استفاده از رابط خط فرمان Firebase ، یک پروژه فایربیس راهاندازی کنید .
تنظیم یا بهروزرسانی رابط خط فرمان (CLI)
نصب رابط خط فرمان Firebase
شما میتوانید رابط خط فرمان Firebase CLI) را با استفاده از روشی که با سیستم عامل، سطح تجربه و/یا مورد استفاده شما مطابقت دارد، نصب کنید. صرف نظر از نحوه نصب رابط خط فرمان، به همان عملکرد و دستور firebase دسترسی خواهید داشت.
ویندوز
شما میتوانید Firebase CLI را برای ویندوز با استفاده از یکی از گزینههای زیر نصب کنید:
| گزینه | توضیحات | توصیه شده برای ... |
|---|---|---|
| دودویی مستقل | فایل باینری مستقل را برای رابط خط فرمان (CLI) دانلود کنید. سپس، میتوانید به فایل اجرایی دسترسی پیدا کنید تا یک پوسته (shell) باز شود که در آن میتوانید دستور firebase را اجرا کنید. | توسعهدهندگان جدید توسعهدهندگانی که از Node.js استفاده نمیکنند یا با آن ناآشنا هستند |
| انپیام | از npm (مدیر بستههای Node) برای نصب CLI و فعال کردن دستور firebase که به صورت سراسری در دسترس است، استفاده کنید. | توسعهدهندگانی که از Node.js استفاده میکنند |
دودویی مستقل
برای دانلود و اجرای فایل باینری برای Firebase CLI، مراحل زیر را دنبال کنید:
فایل باینری Firebase CLI را برای ویندوز دانلود کنید.
برای باز کردن یک پوسته که میتوانید دستور
firebaseرا در آن اجرا کنید، به فایل باینری دسترسی پیدا کنید.به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.
انپیام
برای استفاده از npm (مدیر بستههای Node) برای نصب Firebase CLI، مراحل زیر را دنبال کنید:
Node.js را با استفاده از nvm-windows (مدیر نسخه Node) نصب کنید. نصب Node.js به طور خودکار ابزارهای دستوری
npmرا نصب میکند.با اجرای دستور زیر، Firebase CLI را از طریق
npmنصب کنید:npm install -g firebase-tools
این دستور، دستور
firebaseکه به صورت سراسری در دسترس است را فعال میکند.به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.
macOS یا لینوکس
شما میتوانید با استفاده از یکی از گزینههای زیر، Firebase CLI را برای macOS یا Linux نصب کنید:
| گزینه | توضیحات | توصیه شده برای ... |
|---|---|---|
| اسکریپت نصب خودکار | یک دستور واحد را اجرا کنید که به طور خودکار سیستم عامل شما را تشخیص دهد، آخرین نسخه CLI را دانلود کند، سپس دستور firebase که به صورت سراسری در دسترس است را فعال کند. | توسعهدهندگان جدید توسعهدهندگانی که از Node.js استفاده نمیکنند یا با آن ناآشنا هستند استقرار خودکار در محیط CI/CD |
| دودویی مستقل | فایل باینری مستقل را برای رابط خط فرمان (CLI) دانلود کنید. سپس، میتوانید فایل باینری را متناسب با گردش کار خود پیکربندی و اجرا کنید. | گردشهای کاری کاملاً قابل تنظیم با استفاده از رابط خط فرمان (CLI) |
| انپیام | از npm (مدیر بستههای Node) برای نصب CLI و فعال کردن دستور firebase که به صورت سراسری در دسترس است، استفاده کنید. | توسعهدهندگانی که از Node.js استفاده میکنند |
اسکریپت نصب خودکار
برای نصب Firebase CLI با استفاده از اسکریپت نصب خودکار، مراحل زیر را دنبال کنید:
دستور cURL زیر را اجرا کنید:
curl -sL https://firebase.tools | bash
این اسکریپت به طور خودکار سیستم عامل شما را تشخیص میدهد، آخرین نسخه Firebase CLI را دانلود میکند، سپس دستور
firebaseکه به صورت سراسری در دسترس است را فعال میکند.به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.
برای مثالها و جزئیات بیشتر در مورد اسکریپت نصب خودکار، به کد منبع اسکریپت در firebase.tools مراجعه کنید.
دودویی مستقل
برای دانلود و اجرای فایل باینری مربوط به Firebase CLI که مخصوص سیستم عامل شماست، این مراحل را دنبال کنید:
فایل باینری Firebase CLI را برای سیستم عامل خود دانلود کنید: macOS | Linux
(اختیاری) دستور
firebaseکه به صورت سراسری در دسترس است را تنظیم کنید.- با اجرای دستور
chmod +x ./firebase_toolsفایل باینری را قابل اجرا کنید. - مسیر فایل باینری را به PATH خود اضافه کنید.
- با اجرای دستور
به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.
انپیام
برای استفاده از npm (مدیر بستههای Node) برای نصب Firebase CLI، مراحل زیر را دنبال کنید:
Node.js را با استفاده از nvm (مدیر نسخه Node) نصب کنید.
نصب Node.js به طور خودکار ابزارهای دستوریnpmرا نصب میکند.با اجرای دستور زیر، Firebase CLI را از طریق
npmنصب کنید:npm install -g firebase-tools
این دستور، دستور
firebaseکه به صورت سراسری در دسترس است را فعال میکند.به ورود به سیستم و آزمایش رابط خط فرمان (CLI) ادامه دهید.
وارد شوید و Firebase CLI را آزمایش کنید
پس از نصب رابط خط فرمان (CLI)، باید احراز هویت کنید. سپس میتوانید با فهرست کردن پروژههای Firebase خود، احراز هویت را تأیید کنید.
با استفاده از حساب گوگل خود و با اجرای دستور زیر وارد Firebase شوید:
firebase login
این دستور دستگاه محلی شما را به Firebase متصل میکند و به شما امکان دسترسی به پروژههای Firebase را میدهد.
با فهرست کردن پروژههای Firebase خود، بررسی کنید که CLI به درستی نصب شده و به حساب کاربری شما دسترسی دارد. دستور زیر را اجرا کنید:
firebase projects:list
لیست نمایش داده شده باید همان پروژههای Firebase فهرست شده در کنسول Firebase باشد.
به آخرین نسخه CLI بهروزرسانی کنید
به طور کلی، شما میخواهید از جدیدترین نسخه Firebase CLI استفاده کنید.
نحوهی بهروزرسانی نسخهی CLI به سیستم عامل شما و نحوهی نصب CLI بستگی دارد.
ویندوز
- فایل باینری مستقل : نسخه جدید را دانلود کنید ، سپس آن را در سیستم خود جایگزین کنید
- npm : دستور
npm install -g firebase-toolsرا اجرا کنید.
مکاواس
اسکریپت نصب خودکار :
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 امنیت کمتری دارد و دیگر توصیه نمیشود.
روی دستگاهی که مرورگر دارد، Firebase CLI را نصب کنید .
با اجرای دستور زیر، فرآیند ورود به سیستم را آغاز کنید:
firebase login:ci
به آدرس اینترنتی ارائه شده مراجعه کنید، سپس با استفاده از یک حساب گوگل وارد شوید.
یک نشانه بهروزرسانی جدید چاپ کن. جلسه فعلی CLI تحت تأثیر قرار نخواهد گرفت.
توکن خروجی را به روشی امن اما قابل دسترس در سیستم CI خود ذخیره کنید.
هنگام اجرای دستورات
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 \ | تمام دستورات را برای اجرا در برابر پروژه 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 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 خود ایجاد کنید. این دستور پرچمهای زیر را دریافت میکند:
|
| فایراستور:پایگاههای داده:لیست | پایگاههای داده را در پروژه Firebase خود فهرست کنید. |
| firestore:databases:دریافت DATABASE_ID | پیکربندی پایگاه داده را برای یک پایگاه داده مشخص شده در پروژه Firebase خود دریافت کنید. برای پایگاههای داده سازمانی، خروجی شامل |
| firestore:databases:بهروزرسانی DATABASE_ID | پیکربندی پایگاه داده یک پایگاه داده مشخص شده در پروژه Firebase خود را بهروزرسانی کنید. حداقل یک پرچم مورد نیاز است. این دستور پرچمهای زیر را دریافت میکند:
|
| firestore:databases:حذف DATABASE_ID | یک پایگاه داده را در پروژه Firebase خود حذف کنید. |
| فایراستور: ایندکسها | فهرست کردن اندیسهای یک پایگاه داده در پروژه Firebase شما. این دستور، پرچم زیر را میگیرد:
|
| فروشگاه آتش: حذف | اسناد موجود در پایگاه داده پروژه فعال را حذف میکند. با استفاده از رابط خط فرمان (CLI)، میتوانید به صورت بازگشتی تمام اسناد موجود در یک مجموعه را حذف کنید. توجه داشته باشید که حذف دادههای Cloud Firestore با رابط خط فرمان (CLI) هزینههای خواندن و حذف را به همراه دارد. برای اطلاعات بیشتر، به درک صورتحساب Cloud Firestore مراجعه کنید. این دستور، پرچم زیر را میگیرد:
|
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 | با استفاده از (اختیاری) با ارسال پرچم زیر، یک برنامه وب Firebase موجود را برای ارتباط با سایت جدید مشخص کنید: |
| میزبانی فایربیس:سایتها:حذف SITE_ID | سایت Hosting مشخص شده را حذف میکند رابط خط فرمان (CLI) قبل از حذف سایت، یک پیام تأیید نمایش میدهد. (اختیاری) با ارسال پرچمهای زیر، از مرحله تأیید عبور کنید: |
| میزبانی فایربیس:سایتها:دریافت SITE_ID | اطلاعات مربوط به سایت Hosting مشخص شده را بازیابی میکند |
| میزبانی فایربیس: سایتها: لیست | تمام سایتهای Hosting برای پروژه فعال Firebase را فهرست میکند |
| مدیریت کانالهای پیشنمایش | |
| میزبانی فایربیس: کانال: ایجاد \ CHANNEL_ID | با استفاده از این دستور در کانال اعمال نمیشود. |
| میزبانی فایربیس: کانال: حذف 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 "هدف" ایجاد میکند. میتوانید |
دستورات 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 را حذف میکند. |