Uygulama Barındırma'yı ve işleyiş şeklini anlama

App Hosting, arka plandaki karmaşık görevleri basitleştirerek en iyi uygulamaları paylaştık. Bu sayfada, o görev akışının akışı özelleştirmek isteyebileceğiniz noktalarla ilgili bilgi vermek farklı özellikleri vardır.

Çerçeve desteği

App Hosting, web uygulamaları için yapılandırma gerektirmeyen derleme ve dağıtım desteği sağlar şu çerçevelerde geliştirilmiştir:

  • Next.js 13 ve sonraki sürümler
  • Angular 17.2+

App Hosting, package-lock.json dosyası veya başka bir kilit dosyası yükleyin. Örneğin kilit dosyası olmayan bir Node.js uygulamasını dağıttığınızda App Hosting, uygulamanızı derleyip çalıştırın. Kök dizininizde npm install komutunu çalıştırarak package-lock.json oluşturabilirsiniz.

App Hosting çerçeve bağdaştırıcılarının iki temel rolü vardır:

  1. Kaynak kodunuzu ve çerçeveye özgü yapılandırma dosyalarını (örneğin, next.config.js) anladığınızdan emin olun.
  2. Uygulamanızın derleme komutunu çalıştırarak statik öğeleri üretir ve uygulamanızın üretim için optimize edilmiş sürümünü kullanın.

Çerçeve bağdaştırıcıları, Node.js uygulamanızı npm run build ile oluşturur ve en iyi sonucu verir her çerçeve için varsayılan derleme komut dosyalarıyla: Next.js için next build ve Angular için ng build. App Hosting, özel derlemeyle derlemeleri deneyecek komutlarının verilmesine neden olur, ancak işlemin başarılı olacağını garanti edemez.

App Hosting deposu entegrasyonunun işleyiş şekli

GitHub deponuz ve App Hosting arasındaki önemli bağlantı arka uç, Developer Connect, Google Cloud'un bağlantı platformu geliştirme ekibidir. App Hosting arka ucu oluşturulurken, Developer Connect'in kullanıcı arayüzü iş akışı, Firebase GitHub uygulaması. Bu süreçteki temel adımlar şunlardır:

  1. Developer Connect'e Secret Manager Yöneticisi çok önemlidir. Bu, sistemin kimlik bilgilerini güvenli bir şekilde "gizli anahtar" olarak depolamasına olanak tanır. inç Cloud Secret Manager.
  2. Firebase GitHub uygulamasına GitHub'ınıza erişme yetkisi verirsiniz" depo.
  3. Developer Connect, cihazınızda özel bir GitHub yetkilendirme jetonu saklar ve projenin gizli yönetici deposu; bu jetonu değiştirmeyin veya silmeyin.

Buna ek olarak App Hosting, GitHub checks API ile entegre olarak çalışır: olup olmadığını kontrol edin. Bu kontrol, sunumunuzun durumunu şurada görüntülemenize olanak tanır: Herhangi bir hata olması durumunda, GitHub'a gidip dağıtım sürecinde hata ayıklama işlemi yapın.

Firebase ve diğer Google hizmetleriyle entegrasyon

App Hosting şunları yapabilmeniz için hem derleme hem de çalışma zamanı ortamlarınızı ayarlar: Google ile Firebase Admin SDK'yı başlatın Application Default Credentials. (Uygulama Varsayılan Kimlik Bilgileri) Bu şekilde, arka ucunuz geliştirme ve dağıtım sırasında diğer Firebase ürünleri kullanılır.

App Hosting arka uç hizmet hesabı

Derleme sırasında ve çalışma zamanı sırasında App Hosting arka ucunuz hizmet hesabı olan diğer Google hizmetlerine erişebilir. Şunun için varsayılan hizmet hesabı: Bu amaçlar, bir uygulamada App Hosting özelliğini ilk kez etkinleştirdiğinizde Firebase projesi:

firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com

Bu hizmet hesabı, varsayılan olarak tüm arka uçlar için geçerlidir ve uygulamanızı derlemenizi, çalıştırmanızı ve izlemenizi sağlayan izinler Ayrıca için izin ver Yönetici SDK'sının kimliğini Uygulama Varsayılan Kimlik Bilgileri ile doğrulama, Cloud Firestore alan adından veri yükleme gibi işlemler gerçekleştiriyor. Görüntüleyin Firebase App Hosting rolleri.

Uygulamanızın derleme sırasında ek Google hizmetleriyle etkileşimde bulunması gerekiyorsa veya çalışan bir arka uçtan ihtiyacınız olduğunda, varsayılan hizmet hesabını rol ekleme. Örneğin, uygulamanız Vertex AI için izinlere ihtiyaç duyuyorsa farklı bir dosya için roles/aiplatform.user ya da benzer bir pozisyonla ilgili olarak düşünebilirsiniz.

Anahtar terimler ve tanımlar

  • Arka Uç: App Hosting tarafından belirlenen yönetilen kaynakların koleksiyonu web uygulamanızı derleyip çalıştırmak için tasarımdan yararlanın.
  • Kullanıma sunma: Canlı uygulamanızın git kaydına bağlı belirli bir sürümü.
  • Live Bran: GitHub deponuzun şuna dağıtılan dalı: canlı URL'niz. Çoğunlukla, farklı özelliklerin bulunduğu dallarla geliştirme dalları birleştirilir.

Bilinen sorunlar ve sınırlamalar

App Hosting önizlemesinin bilinen bazı sınırlamaları vardır:

  • Arka uçları silme işlemi gerçekleştirilemiyor.
  • Resim optimizasyonu henüz kullanılamıyor.
  • Bazı durumlarda, bir App Hosting arka ucu Uygulamanızın URL'sinde Intermittent connection error mesaj. Bir düzeltme, sonraki bir sürümde kullanıma sunulacaktır.
  • Önbellek Kontrolü başlıkları, CDN önbelleklerini 60 saniyeyle sınırlamak için değiştirilir; Böylece, App Hosting adlı cihazda önbelleği hızlı bir şekilde bu sınır kaldırılacaktır.
  • Set-Cookie başlıkları, App Hosting veri düzlemi. Sonraki bir sürümde bu sorunun çözümü kullanıma sunulacaktır.
  • Önbelleğe alınmamış statik dosyalar Cloud Run üzerinden sunulur; sonraki sürümlerde depolanırlar ve App Hosting kaynağından sunulurlar. kullanabilirsiniz.
  • App Hosting SKU'ları aşağıdaki arka uç kullanım sayfasında gösterilmeyebilir: Firebase konsolu. Bunlar sonraki bir sürümde kullanıma sunulacaktır.
  • Firebase konsolu aralıklı olarak "derleme bulunamadı ve geçersiz" arka uç oluşturulurken hata meydana geldi.
  • Şu anda aynı projedeki tüm arka uçlar bir GitHub kuruluşunu/hesabını paylaşmaktadır. Bu kuruluş/hesap altındaki farklı depolara bağlanabilirler. Farklı GitHub hesaplarına bağlı arka uçlar oluşturmak için bunları ayrı projelere koymanız gerekir.
  • Şu anda yalnızca us-central1 bölgesi desteklenmektedir.
  • Next.js ara katman yazılımı, yeniden yazma işlemleri ve yönlendirmeler Cloud Run, CDN'nin arkasında. Bunlar önbelleğe alınan verileri korumayacağı için daha fazla bilgi için uygun kontrol yönergelerini Google Trendler'i kullanabilirsiniz.