Cách triển khai tất cả các khung JavaScript lên Cloud Run

1. Giới thiệu

Tổng quan

Trong lớp học lập trình này, hãy triển khai 8 ứng dụng JavaScript vào Cloud Run:

  • SSR góc – dựa trên Angular
  • Nuxt.js – dựa trên Vue.js
  • Next.js – dựa trên React
  • Phối lại – dựa trên React
  • SvelteKit – dựa trên Svelte
  • SolidStart – dựa trên Solid.js
  • Astro
  • Qwik

Ảnh chụp màn hình ứng dụng gócẢnh chụp màn hình ứng dụng Nuxt.jsẢnh chụp màn hình ứng dụng Next.jsẢnh chụp màn hình ứng dụng Phối lạiẢnh chụp màn hình ứng dụng SvelteKitẢnh chụp màn hình ứng dụng SolidStartẢnh chụp màn hình ứng dụng thiên vănẢnh chụp màn hình ứng dụng Qwik

Kiến thức bạn sẽ học được

  • Cách triển khai khung JavaScript mà Cloud Build hỗ trợ tự động
  • Cách triển khai khung JavaScript yêu cầu cấu hình

Điều kiện tiên quyết

2. Kích hoạt Cloud Shell

  1. Chuyển đến thiết bị đầu cuối của Cloud Shell: https://shell.cloud.google.com/?show=terminalNếu đây là lần đầu tiên bạn khởi động Cloud Shell, bạn sẽ thấy một màn hình trung gian mô tả chức năng của Cloud Shell. Nếu bạn nhìn thấy màn hình trung gian, hãy nhấp vào Tiếp tục.Quá trình cấp phép và kết nối với Cloud Shell chỉ mất vài phút.
  2. Chạy lệnh sau trong Cloud Shell để thiết lập dự án gcloud của bạn:
    gcloud config set project <PROJECT_ID>
    
    Thay thế &lt;PROJECT_ID&gt; bằng mã dự án của bạn. Ví dụ:
    gcloud config set project js-frameworks
    
    Nếu thấy lời nhắc uỷ quyền, hãy nhấp vào Uỷ quyền.

3. Bật API

Trước khi có thể bắt đầu sử dụng lớp học lập trình này, bạn sẽ cần bật một số API. Lớp học lập trình này yêu cầu sử dụng các API sau. Bạn có thể bật các API đó bằng cách chạy lệnh sau:

gcloud services enable \
    cloudbuild.googleapis.com \
    artifactregistry.googleapis.com \
    run.googleapis.com

Sau đó, bạn có thể thiết lập các biến môi trường sẽ được dùng trong suốt lớp học lập trình này.

4. Định cấu hình khu vực mặc định

Bạn có thể đặt riêng khu vực cho mỗi lần triển khai. Lệnh này sẽ thiết lập khu vực mặc định thành us-central1 để bạn không cần phải thiết lập cho từng khu vực.

gcloud config set run/region us-central1

5. Định cấu hình git

Một số thư viện dự kiến rằng git sẽ được dùng để quản lý phiên bản theo mặc định. Nếu đã định cấu hình git trên máy của mình (ví dụ: bạn đang chạy phòng thí nghiệm này trên máy), thì bạn không cần phải thực hiện các bước này.

git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git config --global init.defaultBranch main

6. SSR góc (Góc)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo một ứng dụng Angular sử dụng tính năng Kết xuất phía máy chủ (SSR)
    npx @angular/cli new angular-app --ssr
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd angular-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://angular-app-xxxxxxxxxx-uc.a.run.app

Ảnh chụp màn hình ứng dụng góc

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Dọn dẹp không bắt buộc

  1. Xoá dự án Angular cục bộ
    cd ..
    rm -rf angular-app
    
  2. Xoá dịch vụ Angular Cloud Run
    gcloud run services delete angular-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

7. Nuxt.js (Vue.js)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo ứng dụng Nuxt.js
    npx nuxi init nuxt-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd nuxt-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://nuxt-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng Nuxt.js

Dọn dẹp không bắt buộc

  1. Xóa dự án Nuxt.js cục bộ
    cd ..
    rm -rf nuxt-app
    
  2. Xóa dịch vụ Nuxt.js Cloud Run
    gcloud run services delete nuxt-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

8. Next.js (Phản ứng)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo ứng dụng Next.js
    npx create-next-app next-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd next-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://next-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng Next.js

Dọn dẹp không bắt buộc

  1. Xoá dự án Next.js cục bộ
    cd ..
    rm -rf next-app
    
  2. Xóa dịch vụ Next.js Cloud Run
    gcloud run services delete next-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

9. Phối lại (Phản ứng)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo ứng dụng Phối lại
    npx create-remix remix-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd remix-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://remix-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng Phối lại

Dọn dẹp không bắt buộc

  1. Xoá dự án Phối lại cục bộ
    cd ..
    rm -rf remix-app
    
  2. Xoá dịch vụ Remix Cloud Run
    gcloud run services delete remix-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

10. Dọn dẹp Cloud Shell

Nếu bạn không sử dụng Cloud Shell hoặc chỉ đang triển khai một ứng dụng, thì bước này là không bắt buộc

Cloud Shell cung cấp một thư mục gốc có dung lượng ổn định 5 GB và chạy trong Google Cloud.

Để triển khai cả 8 khung bằng Cloud Shell, bạn sẽ cần tạo không gian cho các ứng dụng còn lại.

Khi bạn xoá các dự án trên Cloud Shell, các dịch vụ Cloud Run mà bạn đã triển khai sẽ không bị xoá.

Để xóa các ứng dụng bạn đã tạo, hãy chạy các lệnh sau:

cd ~
rm -rf angular-app/
rm -rf nuxt-app/
rm -rf next-app/
rm -rf remix-app/

11. SvelteKit (Svelte)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo một ứng dụng SvelteKit
    npx create-svelte svelte-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd svelte-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://svelte-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng SvelteKit

Dọn dẹp không bắt buộc

  1. Xoá dự án SvelteKit cục bộ
    cd ..
    rm -rf svelte-app
    
  2. Xoá dịch vụ SvelteKit Cloud Run
    gcloud run services delete svelte-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

12. Khởi động cứng (Khởi động cứng)

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo ứng dụng SolidStart
    npx create-solid solid-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd solid-app
    
  4. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://solid-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng SolidStart

Dọn dẹp không bắt buộc

  1. Xoá cục bộ dự án SolidStart
    cd ..
    rm -rf solid-app
    
  2. Xoá dịch vụ SolidStart Cloud Run
    gcloud run services delete solid-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

13. Astro

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo một ứng dụng Astro
    npx create-astro astro-app
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd astro-app
    
  4. Thêm bộ chuyển đổi Astro cho Node.js
    npx astro add node
    
  5. Cập nhật tập lệnh start trong package.json
    npm pkg set scripts.start="HOST=0.0.0.0 node ./dist/server/entry.mjs"
    
  6. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://astro-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng thiên văn

Dọn dẹp không bắt buộc

  1. Xoá dự án Astro cục bộ
    cd ..
    rm -rf astro-app
    
  2. Xoá dịch vụ Astro Cloud Run
    gcloud run services delete astro-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

14. Qwik

  1. Chuyển đến thư mục mà bạn muốn tạo ứng dụng Angular
    cd ~
    
  2. Tạo một ứng dụng Qwik
    npx create-qwik
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.
  3. Chuyển đến thư mục dự án mới mà bạn đã tạo
    cd qwik-app
    
  4. Thêm bộ chuyển đổi Qwik cho Cloud Run
    npm run qwik add cloud-run
    
  5. Triển khai ứng dụng
    gcloud run deploy --allow-unauthenticated
    
    Khi được nhắc về lựa chọn ưu tiên, hãy nhấn phím Enter để chấp nhận các chế độ mặc định.

Truy cập vào đơn đăng ký

Quá trình triển khai sẽ mất vài phút. Khi hoàn tất, Cloud Run sẽ trả về một URL như:

https://qwik-app-xxxxxxxxxx-uc.a.run.app

Mở URL được cung cấp trong một thẻ trình duyệt mới để xem ứng dụng mà bạn đã triển khai.

Ảnh chụp màn hình ứng dụng Qwik

Dọn dẹp không bắt buộc

  1. Xoá dự án Qwik cục bộ
    cd ..
    rm -rf qwik-app
    
  2. Xoá dịch vụ Qwik Cloud Run
    gcloud run services delete qwik-app
    
    Khi được nhắc nếu bạn muốn tiếp tục, hãy nhấn phím Enter để tiếp tục.

15. Xin chúc mừng!

Chúc mừng bạn đã hoàn thành lớp học lập trình!

Bạn nên tham khảo tài liệu về nội dung Bắt đầu nhanh: Triển khai cho Cloud Run từ kho lưu trữ git để các bản dựng sau này có thể tự động triển khai mỗi khi bạn đẩy mạnh quản lý phiên bản.

Nội dung đã đề cập

  • Cách triển khai khung JavaScript mà Cloud Build hỗ trợ tự động
    • SSR góc – dựa trên Angular
    • Nuxt.js – dựa trên Vue.js
    • Next.js – dựa trên React
    • Phối lại – dựa trên React
    • SvelteKit – dựa trên Svelte
    • SolidStart – dựa trên Solid.js
  • Cách triển khai khung JavaScript yêu cầu cấu hình
    • Astro
    • Qwik

16. Dọn dẹp

Để tránh các khoản phí vô tình (ví dụ: nếu dịch vụ Cloud Run này vô tình bị gọi nhiều lần hơn mức phân bổ lệnh gọi Cloud Run hằng tháng của bạn ở cấp miễn phí), bạn có thể xoá công việc trên Cloud Run hoặc xoá dự án bạn đã tạo ở Bước 1.

Để xoá các dịch vụ của Cloud Run, hãy truy cập vào Cloud Run Cloud Console tại https://console.cloud.google.com/run/ rồi xoá các dịch vụ Cloud Run.

Nếu chọn xoá toàn bộ dự án, bạn có thể truy cập vào https://console.cloud.google.com/cloud-resource-manager, chọn dự án mà bạn đã tạo ở Bước 2 rồi chọn Xoá. Nếu xoá dự án, bạn sẽ phải thay đổi các dự án trong Cloud SDK của mình. Bạn có thể xem danh sách tất cả dự án hiện có bằng cách chạy gcloud projects list.