Yayındaki sitenize dağıtmadan önce değişikliklerinizi görüntülemek ve test etmek isteyeceksiniz. Firebase Hosting, değişiklikleri yerel olarak görüntüleyip test etmenize ve öykünülmüş arka uç proje kaynaklarıyla etkileşimde bulunmanıza olanak tanır. Ekip arkadaşlarınızın değişikliklerinizi görüntülemesine ve test etmesine ihtiyacınız varsa Hosting, siteniz için paylaşılabilir, geçici önizleme URL'leri oluşturabilir. Çekme isteğinden dağıtılacak GitHub entegrasyonunu bile destekliyoruz.
Sen başlamadan önce
Barındırma Başlarken sayfasında listelenen adımları, özellikle de aşağıdaki görevleri tamamlayın:
- Firebase CLI'yi yükleyin veya en son sürümüne güncelleyin.
- Yerel proje dizinini (uygulamanızın içeriğini içeren) Firebase projenize bağlayın.
İsteğe bağlı olarak uygulamanızın Barındırma içeriğini ve yapılandırmasını dağıtabilirsiniz ancak bu, bu sayfadaki adımlar için bir ön koşul değildir.
1. Adım: Yerel olarak test edin
Hızlı yinelemeler yapıyorsanız veya uygulamanızın öykünülmüş arka uç proje kaynaklarıyla etkileşimde bulunmasını istiyorsanız Barındırma içeriğinizi test edebilir ve yerel olarak yapılandırabilirsiniz. Yerel olarak test yaparken Firebase, web uygulamanızı yerel olarak barındırılan bir URL'de sunar.
Barındırma, uygulamanızın öykünülmüş Barındırma içeriğiniz ve yapılandırmanızın yanı sıra isteğe bağlı olarak öykünülmüş proje kaynaklarınızla (işlevler, veritabanları ve kurallar) etkileşim kurmasını sağlayan Firebase Local Emulator Suite'in bir parçasıdır.
(İsteğe bağlı) Varsayılan olarak, yerel olarak barındırılan uygulamanız öykünülmüş değil, gerçek proje kaynaklarıyla (işlevler, veritabanı, kurallar vb.) etkileşime girer. Bunun yerine, isteğe bağlı olarak, yapılandırdığınız öykünülmüş proje kaynaklarını kullanmak için uygulamanızı bağlayabilirsiniz. Daha fazla bilgi edinin: Gerçek Zamanlı Veritabanı | Bulut Firestore | Bulut İşlevleri
Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:
firebase emulators:start
Web uygulamanızı CLI tarafından döndürülen yerel URL'de açın (genellikle
http://localhost:5000
).Yerel URL'yi değişikliklerle güncellemek için tarayıcınızı yenileyin.
Diğer yerel cihazlardan test edin
Varsayılan olarak emülatörler yalnızca localhost
gelen isteklere yanıt verir. Bu, barındırılan içeriğinize bilgisayarınızın web tarayıcısından erişebileceğiniz ancak ağınızdaki diğer cihazlardan erişemeyeceğiniz anlamına gelir. Diğer yerel cihazlardan test etmek istiyorsanız firebase.json
dosyanızı şu şekilde yapılandırın:
"emulators": {
// ...
"hosting": {
"port": 5000
"host": "0.0.0.0"
}
}
firebase serve
kullanırken, uygulamanız Barındırma içeriğiniz ve yapılandırmanız için öykünmüş bir arka uçla (ve isteğe bağlı olarak işlevlerle) etkileşime girer, ancak diğer tüm proje kaynakları için gerçek arka ucunuzla etkileşime girer.
Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:
firebase serve --only hosting
Web uygulamanızı CLI tarafından döndürülen yerel URL'de açın (genellikle
http://localhost:5000
).Yerel URL'yi değişikliklerle güncellemek için tarayıcınızı yenileyin.
Diğer yerel cihazlardan test yapmak için firebase serve
kullanın
Varsayılan olarak firebase serve
yalnızca localhost
gelen isteklere yanıt verir. Bu, barındırılan içeriğinize bilgisayarınızın web tarayıcısından erişebileceğiniz ancak ağınızdaki diğer cihazlardan erişemeyeceğiniz anlamına gelir. Diğer yerel cihazlardan test yapmak istiyorsanız --host
bayrağını şu şekilde kullanın:
firebase serve --host 0.0.0.0 // accepts requests to any host
2. Adım: Önizleyin ve paylaşın
Başkalarının, yayınlanmadan önce web uygulamanızdaki değişiklikleri görüntülemesini istiyorsanız önizleme kanallarını kullanabilirsiniz.
Bir önizleme kanalına dağıtım yaptıktan sonra Firebase, web uygulamanızı paylaşılabilir, geçici bir URL olan bir "önizleme URL'sinde" sunar. Bir önizleme URL'si kullanırken, web uygulamanız tüm proje kaynakları için gerçek arka ucunuzla etkileşime girer ( rewrites config'inizdeki "sabitlenmiş" işlevler hariç).
Önizleme URL'lerinin tahmin edilmesi zor olsa da (rastgele bir karma içerdikleri için), bunların herkese açık olduğunu unutmayın. Yani URL'yi bilen herkes ona erişebilir.
Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:
firebase hosting:channel:deploy CHANNEL_ID
CHANNEL_ID boşluk içermeyen bir dizeyle değiştirin (örneğin,
feature_mission-2-mars
). Bu kimlik, önizleme kanalıyla ilişkili önizleme URL'sini oluşturmak için kullanılacaktır.Web uygulamanızı CLI tarafından döndürülen önizleme URL'sinde açın. Bunun gibi bir şeye benzeyecek:
PROJECT_ID -- CHANNEL_ID - RANDOM_HASH .web.app
Önizleme URL'nizi değişikliklerle güncellemek için aynı komutu tekrar çalıştırın. Komutta aynı
CHANNEL_ID
belirttiğinizden emin olun.
Bir kanalın sona erme tarihinin nasıl belirleneceği de dahil olmak üzere önizleme kanallarını yönetme hakkında bilgi edinin.
Firebase Hosting, bir çekme isteğinde değişiklik yaptığınızda otomatik olarak bir önizleme URL'si oluşturan ve güncelleyen bir GitHub Eylemini destekler. Bu GitHub Eylemini nasıl ayarlayacağınızı ve kullanacağınızı öğrenin.
3. Adım: Canlı olarak dağıtın
Değişikliklerinizi dünyayla paylaşmaya hazır olduğunuzda Barındırma içeriğinizi dağıtın ve canlı kanalınızda yapılandırın. Firebase, kullanım durumunuza bağlı olarak bu adım için birkaç farklı seçenek sunar (aşağıdaki seçeneklere bakın).
1. Seçenek: Bir önizleme kanalından canlı kanalınıza kopyalama
Bu seçenek, bir önizleme kanalında test ettiğiniz içeriğin ve yapılandırmanın aynısını canlı kanalınıza dağıttığınıza dair güven sağlar. Sürümleri klonlama hakkında daha fazla bilgi edinin.
Herhangi bir dizinden aşağıdaki komutu çalıştırın:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live
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 bulunan siteleri belirtebilirsiniz.
SOURCE_CHANNEL_ID : Bu, şu anda canlı kanalınıza dağıtmak istediğiniz sürümü sunan kanalın tanımlayıcısıdır.
- Canlı bir kanal için kanal kimliği olarak
live
kullanın.
- Canlı bir kanal için kanal kimliği olarak
Değişikliklerinizi görüntüleyin (sonraki adım).
2. Seçenek: Yerel proje dizininizden canlı kanalınıza dağıtma
Bu seçenek, canlı kanala özel yapılandırmaları ayarlama veya bir önizleme kanalı kullanmamış olsanız bile dağıtım yapma esnekliği sağlar.
Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:
firebase deploy --only hosting
Değişikliklerinizi görüntüleyin (sonraki adım).
4. Adım: Değişikliklerinizi yayındaki sitenizde görüntüleyin
Yukarıdaki seçeneklerin her ikisi de Hosting içeriğinizi dağıtır ve aşağıdaki sitelere yapılandırır:
Varsayılan Barındırma siteniz ve tüm ek Barındırma siteleri için Firebase tarafından sağlanan alt alanlar:
SITE_ID .web.app
(PROJECT_ID .web.app
gibi)
SITE_ID .firebaseapp.com
(PROJECT_ID .firebaseapp.com
gibi)Barındırma sitelerinize bağladığınız tüm özel alanlar
Dağıtımı belirli bir Barındırma sitesiyle sınırlamak için CLI komutunuzda bir dağıtım hedefi belirtin .
Diğer dağıtım etkinlikleri ve bilgileri
Dağıtım için bir yorum ekleyin
İsteğe bağlı olarak bir dağıtıma yorum ekleyebilirsiniz. Bu yorum, Firebase konsolundaki Barındırma kontrol panelinde diğer dağıtım bilgileriyle birlikte görüntülenecektir. Örneğin:
firebase deploy --only hosting -m "Deploying the best new feature ever."
Dağıtım öncesi ve dağıtım sonrası komut dosyası içeren görevler ekleyin
Dağıtım öncesi veya dağıtım sonrası görevleri gerçekleştirmek için isteğe bağlı olarak kabuk komut dosyalarını firebase deploy
komutuna bağlayabilirsiniz. Örneğin, bir dağıtım sonrası kancası, yöneticileri yeni site içeriği dağıtımları konusunda bilgilendirebilir. Daha fazla ayrıntı için Firebase CLI belgelerine bakın.
Dağıtılan içeriğin önbelleğe alınması
Statik içerik için bir istek yapıldığında Firebase Hosting, içeriği otomatik olarak CDN'de önbelleğe alır. Sitenizin içeriğini yeniden dağıtırsanız Firebase, yeni isteklerin yeni içeriğinizi alabilmesi için CDN'de önbelleğe alınmış tüm statik içeriğinizi otomatik olarak temizler.
Dinamik içeriğin önbelleğe alınmasını yapılandırabileceğinizi unutmayın.
HTTPS üzerinden hizmet verme
Firebase Hosting'de barındırılmayan tüm harici kaynakların, harici komut dosyaları da dahil olmak üzere SSL (HTTPS) üzerinden yüklendiğinden emin olun. Çoğu tarayıcı, kullanıcıların "karışık içerik" (SSL ve SSL olmayan trafik) yüklemesine izin vermez.
Sonraki adımlar
GitHub ile entegre olun ve GitHub Eylemini ayarlayarak önizlenen içeriğinizi yineleyin.
Daha fazla barındırma yeteneği hakkında bilgi edinin:
Firebase CLI'nin tam belgelerine göz atın.
Uygulamanızı başlatmaya hazırlanın:
- Google Cloud Console'da projeniz için bütçe uyarıları ayarlayın.
- Projenizin birden fazla Firebase hizmetindeki kullanımının genel bir resmini elde etmek için Firebase konsolundaki Kullanım ve faturalandırma kontrol panelini izleyin. Daha detaylı kullanım bilgileri için Barındırma Kullanımı kontrol panelini de ziyaret edebilirsiniz.
- Firebase başlatma kontrol listesini inceleyin.