1. Giriş
Genel Bakış
Bu codelab'de sekiz JavaScript uygulamasını Cloud Run'a dağıtın:
- Angular SSR - Angular tabanlı
- Nuxt.js - Vue.js tabanlı
- Next.js - React tabanlı
- Remix - React tabanlı
- SvelteKit - Svelte tabanlı
- SolidStart - Solid.js tabanlı
- Astro
- Qwik








Neler öğreneceksiniz?
- Cloud Build'in otomatik olarak desteklediği JavaScript çerçevelerini dağıtma
- Yapılandırma gerektiren JavaScript çerçevelerini dağıtma
Ön koşullar
- Cloud Shell terminaline giriş yapmış olmanız gerekir.
- Faturalandırmanın etkin olduğu bir Google Cloud projeniz ve Cloud Run'a dağıtım yapma izniniz olmalıdır.
- Daha önce bir Cloud Run hizmeti dağıttıysanız bunu onaylayabilirsiniz. Örneğin, başlamak için kaynak kodundan Node.js web hizmeti dağıtma hızlı başlangıç kılavuzunu inceleyebilirsiniz.
2. Cloud Shell'i etkinleştirme
- Cloud Shell terminaline gidin: https://shell.cloud.google.com/?show=terminalCloud Shell'i ilk kez başlatıyorsanız ne olduğunu açıklayan bir ara ekran gösterilir. Ara ekran gösterildiyse Devam'ı tıklayın.Cloud Shell'in temel hazırlığı ve bağlanması yalnızca birkaç dakikanızı alır.
gcloudprojenizi ayarlamak için Cloud Shell'de aşağıdaki komutu çalıştırın: <PROJECT_ID> kısmını proje kimliğinizle değiştirin. Örnek:gcloud config set project <PROJECT_ID>
Yetkilendirme istenirse Yetkilendir'i tıklayın.gcloud config set project js-frameworks
3. API'leri etkinleştir
Bu codelab'i kullanmaya başlamadan önce etkinleştirmeniz gereken birkaç API vardır. Bu codelab'de aşağıdaki API'lerin kullanılması gerekir. Bu API'leri aşağıdaki komutu çalıştırarak etkinleştirebilirsiniz:
gcloud services enable \
cloudbuild.googleapis.com \
artifactregistry.googleapis.com \
run.googleapis.com
Ardından, bu codelab boyunca kullanılacak ortam değişkenlerini ayarlayabilirsiniz.
4. Varsayılan bölgeyi yapılandırma
Bölgeyi her dağıtım için ayrı ayrı ayarlayabilirsiniz. Bu komut, varsayılan bölgeyi us-central1 olarak ayarlar. Böylece her biri için ayrı ayrı ayarlamanız gerekmez.
gcloud config set run/region us-central1
5. Git'i yapılandırma
Bazı kitaplıklar, sürüm denetimi için varsayılan olarak git kullanılmasını bekler. Makinenizde git zaten yapılandırılmışsa (örneğin, bu laboratuvarı yerel olarak çalıştırıyorsanız) bu adımları uygulamanız gerekmez.
git config --global user.email "you@example.com" git config --global user.name "Your Name" git config --global init.defaultBranch main
6. Angular SSR (Angular)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Sunucu tarafı oluşturma (SSR) kullanan bir Angular uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx @angular/cli new angular-app --ssr
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd angular-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://angular-app-xxxxxxxxxx-uc.a.run.app

Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.
İsteğe bağlı temizleme
- Angular projesini yerel olarak silme
cd .. rm -rf angular-app - Angular Cloud Run hizmetini silin.
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete angular-appEntertuşuna basın.
7. Nuxt.js (Vue.js)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Nuxt.js uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx nuxi init nuxt-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd nuxt-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://nuxt-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- Nuxt.js projesini yerel olarak silin.
cd .. rm -rf nuxt-app - Nuxt.js Cloud Run hizmetini silin.
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete nuxt-appEntertuşuna basın.
8. Next.js (React)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Next.js uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-next-app next-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd next-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://next-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- Next.js projesini yerel olarak silme
cd .. rm -rf next-app - Next.js Cloud Run hizmetini silme
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete next-appEntertuşuna basın.
9. Remix (React)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Remiks uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-remix remix-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd remix-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://remix-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- Remiks projesini yerel olarak silme
cd .. rm -rf remix-app - Remix Cloud Run hizmetini silme
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete remix-appEntertuşuna basın.
10. Cloud Shell'i temizleme
Cloud Shell'i kullanmıyorsanız veya yalnızca tek bir uygulama dağıtıyorsanız bu adım isteğe bağlıdır.
Cloud Shell, 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud'da çalışır.
Sekiz framework'ün tamamını Cloud Shell ile dağıtmak için kalan uygulamalara yer açmanız gerekir.
Cloud Shell'deki projelerin kaldırılması, dağıtılmış Cloud Run hizmetlerinizi silmez.
Daha önce oluşturduğunuz uygulamaları temizlemek için şu komutları çalıştırın:
cd ~ rm -rf angular-app/ rm -rf nuxt-app/ rm -rf next-app/ rm -rf remix-app/
11. SvelteKit (Svelte)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- SvelteKit uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-svelte svelte-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd svelte-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://svelte-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- SvelteKit projesini yerel olarak silin.
cd .. rm -rf svelte-app - SvelteKit Cloud Run hizmetini silme
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete svelte-appEntertuşuna basın.
12. SolidStart (Solid)
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- SolidStart uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-solid solid-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd solid-app
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://solid-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- SolidStart projesini yerel olarak silin.
cd .. rm -rf solid-app - SolidStart Cloud Run hizmetini silin.
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete solid-appEntertuşuna basın.
13. Astro
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Astro uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-astro astro-app
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd astro-app
- Node.js için Astro adaptörünü ekleyin
npx astro add node
package.jsonhizmetindekistartkomut dosyasını güncellemenpm pkg set scripts.start="HOST=0.0.0.0 node ./dist/server/entry.mjs"
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://astro-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- Astro projesini yerel olarak silme
cd .. rm -rf astro-app - Astro Cloud Run hizmetini silme
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete astro-appEntertuşuna basın.
14. Qwik
- Angular uygulamanızı oluşturmak istediğiniz dizine gidin.
cd ~
- Qwik uygulaması oluşturma
Tercihleriniz istendiğinde varsayılanları kabul etmek içinnpx create-qwik
Entertuşuna basın. - Oluşturduğunuz yeni proje klasörüne gidin.
cd qwik-app
- Cloud Run için Qwik bağdaştırıcısını ekleyin
npm run qwik add cloud-run
- Uygulamayı dağıtın
Tercihleriniz istendiğinde varsayılanları kabul etmek içingcloud run deploy --allow-unauthenticated
Entertuşuna basın.
Uygulamanızı ziyaret edin
Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında Cloud Run aşağıdaki gibi bir URL döndürür:
https://qwik-app-xxxxxxxxxx-uc.a.run.app
Dağıtılan uygulamanızı görüntülemek için sağlanan URL'yi yeni bir tarayıcı sekmesinde açın.

İsteğe bağlı temizleme
- Qwik projesini yerel olarak silme
cd .. rm -rf qwik-app - Qwik Cloud Run hizmetini silme
Devam etmek isteyip istemediğiniz sorulduğunda devam etmek içingcloud run services delete qwik-appEntertuşuna basın.
15. Tebrikler!
Tebrikler, codelab'i tamamladınız.
Gelecekteki derlemelerinizin sürüm denetimine her gönderimde otomatik olarak dağıtılabilmesi için Hızlı Başlangıç: Git deposundan Cloud Run'a dağıtma başlıklı dokümanı incelemenizi öneririz.
İşlediğimiz konular
- Cloud Build'in desteklediği JavaScript çerçevelerini otomatik olarak dağıtma
- Angular SSR - Angular tabanlı
- Nuxt.js - Vue.js tabanlı
- Next.js - React tabanlı
- Remix - React tabanlı
- SvelteKit - Svelte tabanlı
- SolidStart - Solid.js tabanlı
- Yapılandırma gerektiren JavaScript çerçevelerini dağıtma
- Astro
- Qwik
16. Temizleme
Yanlışlıkla ücretlendirilmemek için (örneğin, bu Cloud Run hizmeti ücretsiz katmandaki aylık Cloud Run çağırma tahsisinizden daha fazla kez yanlışlıkla çağrılırsa) Cloud Run işini veya 1. adımda oluşturduğunuz projeyi silebilirsiniz.
Cloud Run hizmetlerini silmek için https://console.cloud.google.com/run/ adresinden Cloud Run Cloud Console'a gidip Cloud Run hizmetlerini silin.
Projenin tamamını silmeyi tercih ederseniz https://console.cloud.google.com/cloud-resource-manager adresine gidebilir, 2. adımda oluşturduğunuz projeyi seçip Sil'i tıklayabilirsiniz. Projeyi silerseniz Cloud SDK'nızda projeleri değiştirmeniz gerekir. gcloud projects list komutunu çalıştırarak kullanılabilir tüm projelerin listesini görüntüleyebilirsiniz.