יעדי פריסה הם מזהי שמות קצרים (שאתם מגדירים בעצמכם) עבור משאבי Firebase בפרויקט Firebase שלכם, כמו אתר אירוח עם נכסים סטטיים ייחודיים או קבוצה של מופעי מסד נתונים בזמן אמת שחולקים את אותם כללי אבטחה.
יעדי פריסה שימושיים כאשר יש לך אתרי אירוח מרובים , מספר דליים של אחסון בענן או מופעים מרובים של מסד נתונים בזמן אמת . עם יעדי פריסה, Firebase CLI יכול לפרוס הגדרות למשאב ספציפי או לקבוצת משאבים של Firebase בפרויקט שלך, כגון:
- תצורת האירוח עבור כל אחד מאתרי האירוח שלך
- נכסים סטטיים מספריית הפרויקט שלך עבור כל אחד מאתרי האירוח שלך
- כללי אבטחה משותפים למספר מופעים של מסד נתונים בזמן אמת או דליים מרובים של Cloud Storage
כדי להגדיר יעד פריסה:
- החל
TARGET_NAME
על המשאב הממוקד של Firebase או על קבוצת משאבי Firebase. - בקובץ
firebase.json
שלך, עיין ב-TARGET_NAME
המשויך כאשר אתה מגדיר את ההגדרות עבור כל משאב או קבוצת משאבים.
כאשר אתה מפעיל פקודות Firebase CLI (כמו firebase deploy
), ה-CLI של Firebase משלב כל TARGET_NAME
עם משאבי Firebase המשויכים לו. לאחר מכן, ה-CLI מעביר לפרויקט Firebase שלך את ההגדרות עבור כל משאב.
הגדר יעדי פריסה עבור משאבי Firebase שלך
באמצעות Firebase CLI, החל TARGET_NAME
(מזהה שם קצר שאתה מגדיר בעצמך) על משאב Firebase או על קבוצת משאבי Firebase. Firebase תומך בפריסת יעדים עבור:
ההגדרות עבור יעדי פריסה מאוחסנות בקובץ .firebaserc
בספריית הפרויקט שלך, כך שעליך להגדיר יעדי פריסה פעם אחת בלבד לכל פרויקט.
הגדר יעדי פריסה עבור אירוח
כדי ליצור יעד פריסה ולהחיל TARGET_NAME
על אתר אירוח, הפעל את פקודת ה-CLI הבאה:
firebase target:apply TYPE TARGET_NAME RESOURCE_IDENTIFIER
איפה הפרמטרים:
TYPE - סוג המשאב הרלוונטי של Firebase
- עבור אתרי אירוח של Firebase, השתמש
hosting
.
- עבור אתרי אירוח של Firebase, השתמש
TARGET_NAME - שם ייחודי לאתר האירוח שאליו אתה פורס
RESOURCE_IDENTIFIER - ה-
SITE_ID
של אתר האירוח כפי שמופיע בפרויקט Firebase שלך
לדוגמה, אם יצרת שני אתרים ( myapp-blog
ו- myapp-app
) בפרויקט Firebase שלך, תוכל להחיל TARGET_NAME
ייחודי ( blog
app
, בהתאמה) על כל אתר על ידי הפעלת הפקודות הבאות:
firebase target:apply hosting blog myapp-blog
firebase target:apply hosting app myapp-app
הגדר יעדי פריסה עבור אחסון בענן או מסד נתונים בזמן אמת
כדי ליצור יעד פריסה ולהחיל TARGET_NAME
על קבוצה של משאבי אחסון בענן או מסד נתונים בזמן אמת, הפעל את פקודת ה-CLI הבאה:
firebase target:apply TYPE TARGET_NAME RESOURCE-1_IDENTIFIER RESOURCE-2_IDENTIFIER ...
איפה הפרמטרים:
TYPE - סוג המשאב הרלוונטי של Firebase
- עבור דליים של Cloud Storage, השתמש
storage
. - עבור מופעים של מסד נתונים בזמן אמת, השתמש
database
.
- עבור דליים של Cloud Storage, השתמש
TARGET_NAME - שם ייחודי למשאב או לקבוצת המשאבים החולקים כללי אבטחה
RESOURCE_IDENTIFIER - המזהים של המשאבים כפי שמופיעים בפרויקט Firebase שלך (כמו שמות דלי אחסון או מזהי מופעי מסד נתונים) שכולם חולקים את אותם כללי אבטחה
לדוגמה, תוכל להחיל את ה- TARGET_NAME
של main
על קבוצה של שלושה דליים אזוריים של Cloud Storage (שכולם חולקים את אותם כללי אבטחה) על ידי הפעלת הפקודה הבאה:
firebase target:apply storage main myproject.appspot.com myproject-eu myproject-ja
שים לב ש- myproject.appspot.com
הוא המזהה של דלי ברירת המחדל, בעוד myproject-eu
ו- myproject-ja
הם שני דליים נוספים שנוצרו בפרויקט Firebase.
הגדר את קובץ firebase.json שלך לשימוש ביעדי פריסה
לאחר שתגדיר יעדי פריסה עבור משאבי Firebase שלך, עיין בכל TARGET_NAME
שהוחל בקובץ התצורה firebase.json
:
- צור מערך של אובייקטי תצורה עבור כל משאב Firebase
TYPE
(hosting
,storage
אוdatabase
). - במערכים, ציין את
target
(באמצעות ה-TARGET_NAME
) והגדר את ההגדרות שלך עבור המשאב או קבוצת המשאבים המשויכים Firebase.
בהמשך לדוגמאות מלמעלה, כאשר לפרויקט Firebase שלך יש שני אתרי אירוח ושלושה דליים של Cloud Storage (שחולקים את אותם כללי אבטחה), קובץ firebase.json
שלך ייראה כך:
{ "hosting": [ { "target": "blog", // "blog" is the applied TARGET_NAME for the Hosting site "myapp-blog" "public": "blog/dist", // contents of this folder are deployed to the site "myapp-blog" // ... }, { "target": "app", // "app" is the applied TARGET_NAME for the Hosting site "myapp-app" "public": "app/dist", // contents of this folder are deployed to the site "myapp-app" // ... "rewrites": [...] // You can define specific Hosting configurations for each site } ] } { "storage": [ { "target": "main", // "main" is the applied TARGET_NAME for the group of Cloud Storage buckets "rules": "storage.main.rules" // the file that contains the shared security rules } ] }
אם יש לך מספר תצורות עבור המשאבים שלך, תוכל ליצור יעדי פריסה מרובים ולציין כל אחד מהם בקובץ firebase.json
. כל המשאבים המשויכים ייפרסו יחד בעת הפעלת firebase deploy
.
נהל יעדי פריסה
ההגדרות עבור יעדי פריסה מאוחסנות בקובץ .firebaserc
בספריית הפרויקט שלך. אתה יכול לנהל את יעדי הפריסה של הפרויקט שלך על ידי הפעלת כל אחת מהפקודות הבאות מהשורש של ספריית הפרויקט שלך.
פקודה | תיאור |
---|---|
firebase target | מפרט את יעדי הפריסה עבור ספריית הפרויקט הנוכחית שלך |
firebase target:remove \ | מסיר משאב מהיעד שאליו הוא הוקצה |
firebase target:clear \ | מסיר את כל המשאבים או אתר האירוח מהיעד שצוין |
הפקודות target:remove
ו- target:clear
מעדכנות אוטומטית את הגדרות היעד של הפריסה בקובץ .firebaserc
בספריית הפרויקט שלך.
בדוק באופן מקומי לפני הפריסה
הפעל כל אחת מהפקודות הבאות מהשורש של ספריית הפרויקט שלך.
פקודה | תיאור |
---|---|
firebase emulators:start | מחקה את כל המשאבים המוגדרים בספריית הפרויקט שלך |
firebase emulators:start \ | מחקה רק את תוכן האירוח והתצורה של אתר האירוח שצוין |
firebase emulators:start \ | מחקה רק את קובץ הכללים עבור יעד ה-Cloud Storage שצוין |
firebase emulators:start \ | מחקה רק את קובץ הכללים עבור יעד מסד הנתונים בזמן אמת שצוין |
למידע נוסף על הגדרה ושימוש בחבילת האמולטור המקומית של Firebase .
לפרוס משאבים ספציפיים של Firebase
הפעל כל אחת מהפקודות הבאות מהשורש של ספריית הפרויקט שלך.
פקודה | תיאור |
---|---|
firebase deploy | יוצר גרסה של כל המשאבים הניתנים לפריסה בספריית הפרויקט שלך |
firebase deploy \ | פורס רק את תוכן האירוח והתצורה של אתר האירוח שצוין לערוץ החי של האתר |
firebase hosting:channel:deploy CHANNEL_ID \ | פורס רק את תוכן האירוח והתצורה של אתר האירוח שצוין לערוץ תצוגה מקדימה של האתר |
firebase deploy \ | פורס רק את קובץ הכללים עבור יעד האחסון בענן שצוין |
firebase deploy \ | פורס רק את קובץ הכללים עבור יעד מסד הנתונים בזמן אמת שצוין |