Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Siteniz için canlı ve önizleme kanallarını, sürümleri ve sürümleri yönetin

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

Firebase Barındırma, Barındırma sitenizin kanallarını, sürümlerini ve sürümlerini yönetmek için hem Firebase konsolu hem de Firebase CLI aracılığıyla araçlar sağlar.

Barındırma altyapısına genel bakış

Barındırma altyapısını anlamak, bu sayfada açıklanan yönetim seçeneklerini anlamanıza yardımcı olur.

Her Firebase projesinin, projenin tüm kaynaklarına (veritabanları, kimlik doğrulama, işlevler vb.) erişimi olan varsayılan bir Barındırma sitesi vardır. Bir site, her kanalın belirli içeriğe hizmet veren bir URL ve bir Barındırma yapılandırmasıyla ilişkilendirildiği bir veya daha fazla kanal içerir.

Firebase Barındırma hiyerarşisinin bir görüntüsü

Her Barındırma sitesinde, (1) sitenin Firebase tarafından sağlanan alt etki alanlarında ( SITE_ID .web.app ve SITE_ID .firebaseapp.com ) ve (2) herhangi bir bağlı özel etki alanında içerik ve bir Barındırma yapılandırması sunan bir "canlı" kanal bulunur. İsteğe bağlı olarak, geçici, paylaşılabilir "önizleme URL'lerinde" ( SITE_ID -- CHANNEL_ID - RANDOM_HASH .web.app ) kendi içeriklerine ve yapılandırmalarına hizmet eden "önizleme" kanalları da oluşturabilirsiniz.

Her kanalın sunduğu içerik ve yapılandırma, benzersiz tanımlayıcıya sahip bir sürüm nesnesinde paketlenir. Sitenize dağıtım yaptığınızda Firebase, belirli bir sürüme işaret eden bir yayın nesnesi oluşturur. Bir sürüm, kimin dağıttığı ve ne zaman dağıttığı gibi dağıtımla ilgili meta verileri içerir.

Firebase projenizin Barındırma kontrol panelinden , yayın geçmişi tablosunda canlı kanalınızın yayınlarının tam geçmişini görebilirsiniz. Birden çok Barındırma siteniz varsa , yayın geçmişini görmek istediğiniz site için Görüntüle'yi tıklayın. Herhangi bir önizleme kanalınız varsa, bunlar da Barındırma kontrol panelinde görüntülenir.

Bir kanalın ayarlarını yönetme

Sitenizin her kanalı için ayarlarını kontrol edebilirsiniz. Kanal son kullanma tarihi gibi bazı ayarlar yalnızca önizleme kanalları için geçerlidir.

Tutulacak sürüm sayısını sınırlayın

Bir kanala her dağıttığınızda (ve bir sürüm oluşturduğunuzda), Hosting, önceki sürümle ilişkili sürümü projenizin Hosting depolama alanında tutar. Hem canlı hem de ön izleme kanalları olmak üzere projenizdeki her kanal için saklanacak yayın sayısını ayarlayabilirsiniz.

  • Hosting neden önceki sürümleri saklıyor?
    Canlı kanalınız için önceki sürümlerin saklanması, gerekirse sitenizin önceki bir sürümüne geri dönmenizi sağlar. Önizleme kanallarınız için geri alma henüz mevcut değildir.

  • Tutulacak sürüm sayısını neden sınırlayasınız?
    Önceki sürümlerin içeriği bu depoda tutulduğu için bu özellik, projenizin Barındırma deposunun kullanım düzeyini kontrol etmenize yardımcı olabilir. Barındırma depolama alanınızı konsoldaki Depolama sekmesinden izleyebilirsiniz.

  • Tutulacak yayınları sınırladığınızda ne olur?
    Tutulacak sürümler için bir sınır ayarladığınızda, belirlediğiniz sınırı aşan tüm sürümlerin içeriği, önce en eski sürümlerden başlayarak silinmek üzere planlanır.

Bir kanal için sürüm depolama sınırını nasıl ayarlayacağınız aşağıda açıklanmıştır:

  1. Firebase konsolunda , serbest bırakma depolama ayarı iletişim kutusuna erişin:

    • Canlı kanalınız için
      Sitenizin Yayın Geçmişi tablosunda öğesini tıklayın, ardından Depolama ayarlarını serbest bırak öğesini seçin.

    • Herhangi bir önizleme kanalı için
      Önizleme kanalı satırında öğesini tıklayın, ardından Kanal ayarları öğesini seçin.

  2. Saklamak istediğiniz sürüm sayısını girin ve ardından Kaydet 'i tıklayın.

Bir önizleme kanalının sona erme tarihini ayarlayın

Varsayılan olarak, bir önizleme kanalının süresi, oluşturulma tarihinden itibaren 7 gün sonra sona erer, ancak sitenizin canlı kanalının süresi hiçbir zaman dolmaz.

Bir önizleme kanalının süresi dolduğunda, kanal, yayınları ve ilişkili sürümleriyle birlikte 24 saat içinde silinmek üzere programlanır. İlişkili önizleme URL'si de devre dışı bırakılır. Bu sürüm silme işleminin bir istisnası, bir sürümün başka bir yayınla ilişkilendirilmiş olmasıdır (bu, örneğin, bir sürümü aynı site içinde bir kanaldan diğerine klonlarsanız olur).

Barındırma, bir kanalın sona erme tarihini kontrol etmenin iki farklı yolunu destekler:

  • Firebase konsolu
    Önizleme kanalı satırında öğesini tıklayın, ardından Kanal ayarları öğesini seçin. Son kullanma tarihini ve saatini girin.

  • Firebase CLI'sı
    Önizleme kanalınıza dağıtım yaptığınızda --expires DURATION işaretini iletin, örneğin:

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    Son kullanma tarihi, dağıtım tarihinden itibaren 30 güne kadar olabilir. Saatler için h , günler için d ve haftalar için w kullanın (örneğin, sırasıyla 12h , 7d , 2w ).

Sürümü bir kanaldan diğerine klonlayın

Dağıtılan bir sürümü bir kanaldan farklı bir kanala kopyalayabilirsiniz. Canlı veya önizleme kanallarında, Barındırma sitelerinde ve hatta Firebase projelerinde klonlayabilirsiniz.

Clone komutu ayrıca "hedef" kanala konuşlandırılır , böylece klonlanan Barındırma içeriği ve yapılandırması otomatik olarak "hedef" kanalın ilişkili URL'sinde sunulur.

Bu özellik, sürüm izleme için veya tam olarak başka bir kanalda görüntülediğiniz ve/veya test ettiğiniz içeriği dağıttığınızdan emin olmak istiyorsanız kullanışlıdır. İşte bazı örnekler:

  • Bir "QA" önizleme kanalından sitenizin canlı kanalına kopyalayın (yayınlanıyor!)

  • Sitenizin canlı kanalından bir "hata ayıklama" önizleme kanalına klonlayın (geri alma işleminden önceki gibi)

  • "Hazırlık" Firebase projenizdeki bir kanaldan "prod" Firebase projenizdeki bir önizleme kanalına klonlayın

Bir sürümü klonlamak için herhangi bir dizinden aşağıdaki komutu çalıştırın:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Her yer tutucuyu aşağıdakiyle değiştirin:

  • SOURCE_SITE_ID ve TARGET_SITE_ID : Kanalların bulunduğu Hosting sitelerinin ID'leridir.

    • Varsayılan Barındırma siteniz için Firebase proje kimliğinizi kullanın.
    • Aynı Firebase projesinde hatta farklı Firebase projelerinde yer alan Hosting sitelerini belirleyebilirsiniz.
  • SOURCE_CHANNEL_ID ve TARGET_CHANNEL_ID : Bunlar kanalların tanımlayıcılarıdır.

    • Canlı bir kanal için, kanal kimliği olarak live kullanın.
    • Belirtilen "hedef" kanal henüz mevcut değilse, bu komut kanalı konuşlandırmadan önce oluşturur.

Sitenizin önceki bir sürümüne geri dönün

Sitenizin canlı kanalının önceki bir sürümünü sunmak için geri alabilirsiniz. Mevcut sürümünüzde bir sorun varsa ve sitenizin çalışan bilinen bir sürümünü sunmak için geri dönmek istiyorsanız bu eylem kullanışlıdır. Veya siteniz bir tatil veya özel etkinlik için geçici içerik sunmuş olabilir, ancak şimdi "normal" içeriğinizi sunmak için geri dönmek istiyorsunuz.

Geri alarak, önceki sürümle aynı içerik sürümünü sunan yeni bir sürüm oluşturursunuz. Sürüm geçmişi tablonuzda, her iki sürüm de aynı sürüm tanımlayıcısını listeler.

Nasıl geri alınacağı aşağıda açıklanmıştır:

  1. Firebase konsolunda , sitenizin Yayın Geçmişi tablosunda fareyle geri dönmek istediğiniz önceki sürüm girişinin üzerine gelin.

  2. öğesini tıklayın, ardından Geri al öğesini seçin.

Sürümü manuel olarak silme

Projeniz için Barındırma depolama alanında yer açmak için canlı kanalınızdan bir sürümü manuel olarak silmeniz gerekebilir. Yalnızca önceki yayınları silebilirsiniz, şu anda canlı sitenizde sunulmakta olan sürümü silemezsiniz.

Bir sürümü sildiğinizde, aslında 24 saat içinde silinmesi planlanan içeriğini de siliyorsunuz. Serbest bırakma nesnesinin kendisi, meta verilerini (kim konuşlandırıldı ve ne zaman dağıtıldı) hala görebilmeniz için tutulur.

Bir sürümü şu şekilde silebilirsiniz:

  1. Firebase konsolunda , sitenizin Yayın Geçmişi tablosunda, fareyle silmek istediğiniz önceki sürüm girişinin üzerine gelin.

  2. öğesini tıklayın, ardından Sil öğesini seçin.

Bir önizleme kanalını manuel olarak silin

Bir önizleme kanalını silebilirsiniz ancak sitenizin canlı kanalını silemezsiniz.

Bir önizleme kanalını sildiğinizde, kanal, yayınları ve ilişkili sürümleriyle birlikte 24 saat içinde silinmek üzere planlanır. İlişkili önizleme URL'si de devre dışı bırakılır. Sürüm silme işleminin bir istisnası, bir sürümün başka bir yayınla ilişkilendirilmiş olmasıdır (bu, örneğin, bir sürümü aynı site içinde bir kanaldan diğerine klonlarsanız gerçekleşir).

Barındırma, bir önizleme kanalını silmenin iki farklı yolunu destekler:

  • Firebase konsolu
    Önizleme kanalı satırında öğesini tıklayın, ardından Kanalı sil öğesini seçin. Silme işlemini onaylayın.

  • Firebase CLI'sı
    Aşağıdaki komutu herhangi bir dizinden çalıştırın:

    firebase hosting:channel:delete CHANNEL_ID

Önizleme kanalları ve klonlama için CLI komutları

Önizleme kanalları için komutlar

Birden çok Barındırma siteniz varsa, önizleme kanalları için tüm komutlar dağıtım hedeflerini destekler.

Emretmek Açıklama
firebase hosting:channel:create CHANNEL_ID

Belirtilen CHANNEL_ID kullanarak varsayılan Barındırma sitesinde yeni bir önizleme kanalı oluşturur.

Bu komut kanala dağıtılmaz.

firebase hosting:channel:delete CHANNEL_ID

Belirtilen önizleme kanalını siler

Bir sitenin canlı kanalını silemezsiniz.

firebase hosting:channel:deploy CHANNEL_ID

Barındırma içeriğinizi dağıtır ve belirtilen önizleme kanalına yapılandırır

Önizleme kanalı henüz mevcut değilse, bu komut kanalı kanala dağıtmadan önce varsayılan Barındırma sitesinde oluşturur.

firebase hosting:channel:list Varsayılan Barındırma sitesindeki ("canlı" kanal dahil) tüm kanalları listeler
firebase hosting:channel:open CHANNEL_ID Belirtilen kanalın URL'sine bir tarayıcı açar veya bir tarayıcıda açmak mümkün değilse URL'yi döndürür

Sürüm klonlama komutları

Emretmek Açıklama
firebase hosting:clone \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

Belirtilen "kaynak" kanalındaki en son dağıtılan sürümü belirtilen "hedef" kanala klonlar

Bu komut, belirtilen "hedef" kanala da dağıtılır. "Hedef" kanal henüz mevcut değilse bu komut, kanala dağıtılmadan önce "hedef" Barındırma sitesinde yeni bir önizleme kanalı oluşturur.

firebase hosting:clone \
SOURCE_SITE_ID :@ VERSION_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

Belirtilen sürümü belirtilen "hedef" kanala klonlar

Bu komut, belirtilen "hedef" kanala da dağıtılır. "Hedef" kanal henüz mevcut değilse bu komut, kanala dağıtılmadan önce "hedef" Barındırma sitesinde yeni bir önizleme kanalı oluşturur.

VERSION_ID Firebase konsolunun Barındırma kontrol panelinde bulabilirsiniz.