Firebase Hosting מספק כלים דרך מסוף Firebase ו-CLI של Firebase לניהול הערוצים, הגרסאות והמהדורות של אתר Hosting.
סקירה כללית על התשתית של Hosting
הבנת התשתית של Hosting עוזרת להבין את אפשרויות הניהול שמתוארות בדף הזה.
לכל פרויקט ב-Firebase יש Hosting אתר שמוגדר כברירת מחדל עם גישה לכל המשאבים של הפרויקט (מסדי נתונים, אימות, פונקציות וכו'). אתר מכיל ערוץ אחד או יותר, כאשר כל ערוץ משויך לכתובת URL שמציגה תוכן ספציפי ולהגדרה של Hosting.

לכל אתר Hosting יש ערוץ 'פעיל' שבו מוצג תוכן, וקובץ Hosting config במיקומים הבאים: (1) תת-הדומיינים שהוקצו לאתר ב-Firebase (SITE_ID.web.app ו-SITE_ID.firebaseapp.com) ו-(2) כל הדומיינים המותאמים אישית שמקושרים לאתר. אפשר גם ליצור ערוצי 'תצוגה מקדימה' אופציונליים שמציגים תוכן והגדרות משלהם בכתובות URL זמניות וניתנות לשיתוף של 'תצוגה מקדימה' (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app
התוכן וההגדרות שמוצגים בכל ערוץ נארזים באובייקט version עם מזהה ייחודי. כשמבצעים פריסה באתר, מערכת Firebase יוצרת אובייקט release שמפנה לגרסה ספציפית. גרסת הפצה מכילה מטא-נתונים על הפריסה, כמו מי פרסם את האפליקציה ומתי.
בHosting לוח הבקרה של פרויקט Firebase, אפשר לראות היסטוריה מלאה של פריטי התוכן בערוץ בשידור חי בטבלה Release history (היסטוריית פריטי התוכן). אם יש לכם כמה Hosting אתרים, לוחצים על הצגה ליד האתר הרצוי כדי לראות את היסטוריית הגרסאות שלו. אם יש לכם ערוצי תצוגה מקדימה, הם מוצגים גם בלוח הבקרה Hosting.
ניהול ההגדרות של הערוץ
אתם יכולים לשלוט בהגדרות של כל ערוץ באתר. חלק מההגדרות, כמו תפוגה של ערוץ, רלוונטיות רק לערוצי טרום-השקה.
הגבלת מספר הגרסאות לשמירה
בכל פעם שמבצעים פריסה לערוץ (ויוצרים גרסה), Hosting שומרת את הגרסה שמשויכת לגרסה הקודמת באחסון של הפרויקט ב-Hosting. אתם יכולים להגדיר את מספר הגרסאות שיישארו לכל ערוץ בפרויקט, גם בערוצים פעילים וגם בערוצי תצוגה מקדימה.
למה Hosting שומרת גרסאות קודמות?
בערוץ הפעיל, שמירת הגרסאות הקודמות מאפשרת לכם לחזור לגרסה קודמת של האתר, אם צריך. בערוצי התצוגה המקדימה, עדיין אי אפשר לבצע חזרה לגרסה קודמת.למה צריך להגביל את מספר הגרסאות שרוצים לשמור?
התכונה הזו יכולה לעזור לכם לשלוט ברמת השימוש באחסון של Hostingהפרויקט, כי התוכן של גרסאות קודמות נשמר באחסון הזה. אתם יכולים לעקוב אחרי נפח האחסון שלכם בHosting בכרטיסייה אחסון במסוף.מה קורה כשמגבילים את מספר הגרסאות שרוצים לשמור?
כשמגדירים מגבלה על מספר הגרסאות שרוצים לשמור, התוכן של כל הגרסאות שמעל המגבלה שהוגדרה מתוזמן למחיקה, החל מהגרסאות הכי ישנות.
כך מגדירים את מגבלת נפח האחסון של ערוץ:
במסוף Firebase, עוברים אל Hosting & Serverless > Hosting כדי לפתוח את תיבת הדו-שיח של הגדרת האחסון של הגרסה:
בערוץ בשידור חי
בטבלה Release History (היסטוריית הגרסאות) באתר, לוחצים על ואז בוחרים באפשרות Release storage settings (הגדרות אחסון של גרסאות).לכל ערוץ תצוגה מקדימה
בשורה של ערוץ התצוגה המקדימה, לוחצים על ואז בוחרים באפשרות הגדרות הערוץ.
מזינים את מספר הפריטים שרוצים לשמור ולוחצים על שמירה.
הגדרת תפוגה לערוץ תצוגה מקדימה
כברירת מחדל, התוקף של ערוץ בתצוגה מקדימה פג 7 ימים מתאריך היצירה שלו, אבל התוקף של הערוץ החי באתר שלכם לא יפוג לעולם.
כשערוץ בתצוגה מקדימה מפסיק לפעול, הערוץ, יחד עם הפריטים והגרסאות שמשויכים אליו, מתוזמנים למחיקה תוך 24 שעות. גם כתובת ה-URL המשויכת לתצוגה המקדימה מושבתת. חריג למחיקת הגרסה הוא אם גרסה משויכת לגרסה אחרת (זה קורה, למשל, אם משכפלים גרסה מערוץ אחד לערוץ אחר באותו אתר).
Hosting תומך בשתי דרכים שונות לשליטה בתוקף של ערוץ:
Firebase console
בשורה של ערוץ התצוגה המקדימה, לוחצים על ואז בוחרים באפשרות הגדרות הערוץ. מזינים את התאריך והשעה של התפוגה.Firebase CLI
כשמבצעים פריסה לערוץ התצוגה המקדימה, מעבירים את הדגל--expires DURATION, לדוגמה:firebase hosting:channel:deploy new-awesome-feature --expires 7d
תוקף ההרשאה יכול להיות עד 30 יום מתאריך הפריסה. משתמשים ב-
hלשעות, ב-dלימים וב-wלשבועות (לדוגמה,12h,7d,2wבהתאמה).
שיבוט גרסה מערוץ אחד לערוץ אחר
אפשר לשכפל גרסה שפרסתם מערוץ אחד לערוץ אחר. אפשר לשכפל בין ערוצים פעילים או ערוצי תצוגה מקדימה, בין Hosting אתרים או אפילו בין פרויקטים ב-Firebase.
פקודת השיבוט גם מבצעת פריסה לערוץ היעד, כך שהתוכן וההגדרות המשובטים של Hosting מוצגים באופן אוטומטי בכתובת ה-URL המשויכת לערוץ היעד.
התכונה הזו שימושית למעקב אחרי גרסאות, או אם אתם רוצים לוודא שאתם מפיצים את התוכן המדויק שראיתם או בדקתם בערוץ אחר. הנה כמה דוגמאות:
שיבוט מערוץ תצוגה מקדימה של 'בקרת איכות' לערוץ הפעיל של האתר (העברה לשידור חי!)
שיבוט מהערוץ הפעיל של האתר לערוץ תצוגה מקדימה לניפוי באגים (למשל, לפני ביצוע שחזור)
שיבוט מערוץ בפרויקט Firebase 'staging' לערוץ תצוגה מקדימה בפרויקט Firebase 'prod'
כדי לשכפל גרסה, מריצים את הפקודה הבאה מכל ספרייה:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID
מחליפים כל placeholder בערכים הבאים:
SOURCE_SITE_ID ו-TARGET_SITE_ID: אלה המזהים של האתרים Hosting שמכילים את הערוצים.
- באתר Hosting שמוגדר כברירת מחדל, משתמשים במזהה הפרויקט ב-Firebase.
- אפשר לציין Hosting אתרים שנמצאים באותו פרויקט Firebase או אפילו בפרויקטים שונים של Firebase.
SOURCE_CHANNEL_ID ו-TARGET_CHANNEL_ID: אלה המזהים של הערוצים.
- בערוץ בשידור חי, משתמשים ב-
liveכמזהה הערוץ. - אם הערוץ שצוין בפרמטר target עדיין לא קיים, הפקודה הזו יוצרת את הערוץ לפני הפריסה.
- בערוץ בשידור חי, משתמשים ב-
חזרה לגרסה קודמת של האתר
אפשר להחזיר למצב קודם כדי להכניס לשימוש בסביבת הייצור גרסה קודמת של הערוץ הפעיל של האתר. הפעולה הזו שימושית אם יש בעיה בגרסה הנוכחית ואתם רוצים לחזור לגרסה קודמת של האתר שאתם יודעים שהיא תקינה. או אולי האתר הציג תוכן זמני לרגל חג או אירוע מיוחד, אבל עכשיו אתם רוצים לחזור להצגת התוכן הרגיל.
כשמבצעים חזרה לגרסה קודמת, נוצרת גרסה חדשה שמציגה את אותה גרסת תוכן כמו גרסה קודמת. בטבלה היסטוריית הגרסאות, בשתי הגרסאות יופיע אותו מזהה גרסה.
כך מבצעים חזרה לגרסה הקודמת:
במסוף Firebase, עוברים אל Hosting & Serverless (אירוח ושרתים וירטואליים) > Hosting (אירוח).
בטבלה היסטוריית הגרסאות של האתר, מעבירים את העכבר מעל הגרסה הקודמת שרוצים לחזור אליה.
לוחצים על ואז על החזרה לגרסה קודמת.
מחיקה ידנית של פריט תוכן
יכול להיות שתצטרכו למחוק באופן ידני פריט תוכן מהערוץ הפעיל כדי לפנות נפח אחסון של Hosting לפרויקט. אפשר למחוק רק גרסאות קודמות, ולא את הגרסה שמוצגת כרגע באתר הפעיל.
כשמוחקים פריט תוכן, למעשה מוחקים את התוכן שלו, והוא מתוזמן למחיקה תוך 24 שעות. אובייקט הפריט עצמו נשמר כדי שעדיין תוכלו לראות את המטא-נתונים שלו (מי פרסם אותו ומתי).
כך מוחקים פריט תוכן:
במסוף Firebase, עוברים אל Hosting & Serverless (אירוח ושרתים וירטואליים) > Hosting (אירוח).
בטבלה Release History של האתר, מעבירים את העכבר מעל רשומה של גרסה קודמת שרוצים למחוק.
לוחצים על ואז על מחיקה.
מחיקת קבצים באופן ידני
ב-Firebase Hosting, הדרך העיקרית למחוק קבצים נבחרים מאתר שפרסתם היא למחוק את הקבצים באופן מקומי ואז לפרוס מחדש.
מחיקה ידנית של ערוץ תצוגה מקדימה
כדי לראות תצוגה מקדימה של הערוצים, לוחצים על הערוץ שרוצים לראות. בתצוגה הזו אפשר לראות, למחוק ולשחזר את הפריסות והגרסאות האחרונות שמשויכות לערוץ הספציפי. אפשר למחוק ערוץ תצוגה מקדימה, אבל אי אפשר למחוק את הערוץ הפעיל של האתר.
כשמוחקים ערוץ תצוגה מקדימה, הערוץ, יחד עם הפריטים לפרסום והגרסאות המשויכות שלו, מתוזמנים למחיקה תוך 24 שעות. גם כתובת ה-URL המשויכת לתצוגה המקדימה מושבתת. חריג למחיקת הגרסה הוא אם גרסה משויכת לגרסה אחרת (זה קורה, למשל, אם משכפלים גרסה מערוץ אחד לערוץ אחר באותו אתר).
Hosting תומך בשתי דרכים שונות למחיקת ערוץ תצוגה מקדימה:
Firebase console
בשורה של ערוץ הבטא, לוחצים על ואז על מחיקת הערוץ. אשר את המחיקה.Firebase CLI
מריצים את הפקודה הבאה מכל ספרייה:firebase hosting:channel:delete CHANNEL_ID
פקודות CLI לערוצי תצוגה מקדימה ולשיבוט
פקודות לערוצי תצוגה מקדימה
כל הפקודות לערוצי תצוגה מקדימה תומכות ביעדי פריסה אם יש לכם כמה אתרי Hosting.
| פקודה | תיאור |
|---|---|
firebase hosting:channel:create CHANNEL_ID
|
יוצר ערוץ חדש של גרסת Preview באתר default Hosting באמצעות הפקודה הזו לא מופעלת בערוץ. |
firebase hosting:channel:delete CHANNEL_ID
|
מחיקת ערוץ התצוגה המקדימה שצוין אי אפשר למחוק ערוץ שידור חי של אתר. |
firebase hosting:channel:deploy CHANNEL_ID
|
פריסת התוכן וההגדרות של Hosting בערוץ התצוגה המקדימה שצוין אם ערוץ התצוגה המקדימה עדיין לא קיים, הפקודה הזו יוצרת את הערוץ באתר ברירת המחדל Hosting לפני הפריסה בערוץ. |
firebase hosting:channel:list
|
רשימה של כל הערוצים (כולל הערוץ 'בשידור חי') באתר ברירת המחדל Hosting |
firebase hosting:channel:open CHANNEL_ID
|
פותח דפדפן לכתובת ה-URL של הערוץ שצוין או מחזיר את כתובת ה-URL אם אי אפשר לפתוח בדפדפן |
פקודות לשכפול גרסה
| פקודה | תיאור |
|---|---|
firebase hosting:clone \
|
משכפל את הגרסה האחרונה שהופעלה בערוץ ה'מקור' שצוין אל ערוץ ה'יעד' שצוין הפקודה הזו גם מבצעת פריסה לערוץ ה "יעד" שצוין. אם ערוץ היעד עדיין לא קיים, הפקודה הזו יוצרת ערוץ חדש לתצוגה מקדימה באתר היעד Hosting לפני הפריסה בערוץ. |
firebase hosting:clone \
|
משכפל את הגרסה שצוינה לערוץ ה'יעד' שצוין הפקודה הזו גם מבצעת פריסה לערוץ ה "יעד" שצוין. אם ערוץ היעד עדיין לא קיים, הפקודה הזו יוצרת ערוץ חדש לתצוגה מקדימה באתר היעד Hosting לפני הפריסה בערוץ. אפשר למצוא את |