实验设置说明和要求
保护您的账号和进度。请务必在无痕浏览器窗口中,使用实验凭证运行此实验。

開始使用 Cloud Run

实验 1 小时 universal_currency_alt 5 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
此内容尚未针对移动设备进行优化。
为获得最佳体验,请在桌面设备上访问通过电子邮件发送的链接。

總覽

Cloud Run 標誌

Cloud Run 是代管運算平台,能讓您執行可透過 HTTP 要求叫用的無狀態容器。這個平台採無伺服器設計,能省去所有基礎架構管理工作,讓您專心處理核心任務:建構出色應用程式。

透過這個實驗室,您將學會如何建立簡易容器化應用程式映像檔,並部署至 Cloud Run。

目標

在本實驗室,您將瞭解如何執行下列工作:

  • 啟用 Cloud Run 和 Artifact Registry API。
  • 建構簡易型 Node.js 應用程式,以便部署為無伺服器的無狀態容器。
  • 建立 Artifact Registry 存放區。
  • 將應用程式容器化並上傳至 Artifact Registry。
  • 在 Cloud Run 部署容器化應用程式。
  • 刪除不需要的映像檔,避免產生額外的儲存費用。

設定和需求

每個實驗室都會提供新的 Google Cloud 專案和一組資源,讓您在時限內免費使用。

  1. 按一下「Start Lab」按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的臨時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」

    接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

    {{{user_0.username | "Username"}}}

    您也可以在「Lab Details」窗格找到 Username

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

    {{{user_0.password | "Password"}}}

    您也可以在「Lab Details」窗格找到 Password

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要查看列出 Google Cloud 產品和服務的選單,請點選左上角的「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。 「導覽選單」圖示

啟動 Google Cloud Shell

Google Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。

Google Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。

  1. 在 Cloud 控制台的右上方找到工具列,然後按一下「開啟 Cloud Shell」按鈕。

    特別標明的「Cloud Shell」圖示

  2. 按一下「繼續」

佈建並連線至環境的作業需要一些時間才能完成。連線建立完成即代表已通過驗證,而且專案已設為您的「PROJECT_ID」。示例如下:

在 Cloud Shell 終端機中,特別標明了專案 ID

gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵完成功能。

  • 您可以使用下列指令來列出使用中的帳戶:
gcloud auth list

輸出內容:

Credentialed accounts: - @.com (active)

輸出內容示例:

Credentialed accounts: - google1623327_student@qwiklabs.net
  • 您可以使用下列指令來列出專案 ID:
gcloud config list project

輸出內容:

[core] project =

輸出內容示例:

[core] project = qwiklabs-gcp-44776a13dea667a6 注意事項:如需 gcloud 的完整說明,請參閱 gcloud CLI 總覽指南

參考資料

基本 Linux 指令

下方的參考清單列出了幾個非常基本的 Linux 指令,這個研究室的操作說明或程式碼區塊可能會提及這些指令。

指令 --> 動作 . 指令 --> 動作
mkdir (建立目錄) 建立新的資料夾 . cd (變更目錄) 將位置變更為其他資料夾
ls (列出) 列出目錄中的檔案和資料夾 . cat (串連) 在不使用編輯器的情況下讀取檔案內容
apt-get update 更新套件管理工具程式庫 . ping 向主機傳送信號來測試可連性
mv (移動) 移動檔案 . cp (複製) 建立檔案副本
pwd (顯示工作目錄) 傳回目前的位置 . sudo (超級使用者權限) 授予更高層級的管理員權限

工作 1:啟用 Cloud Run API 並設定 Cloud Shell 環境

在這項工作中,您將啟用必要的 API 並設定環境變數,以便簡化後續指令。

  1. 在 Cloud Shell 啟用 Cloud Run APIArtifact Registry API,這樣專案就能接受下列服務的要求:
gcloud services enable run.googleapis.com artifactregistry.googleapis.com
  1. 如果系統要求授權使用您的憑證,請按照指示操作。接著,畫面應該會顯示類似以下內容的成功訊息:
Operation "operations/acf.cc11852d-40af-47ad-9d59-477a12847c9e" finished successfully. 注意:您也可以前往 Google Cloud 控制台的「API 和服務」專區啟用該 API。
  1. 設定運算區域:
gcloud config set compute/region {{{project_0.default_region | "REGION"}}}
  1. 建立 LOCATION 環境變數:
LOCATION="{{{project_0.default_region | Region}}}"

工作 2:編寫範例應用程式

在這項工作中,您將建構一個以 Express 為基礎的簡易型 Node.js 應用程式,用於回應 HTTP 要求。

  1. 在 Cloud Shell 建立名為 helloworld 的新目錄,然後前往該目錄:
mkdir helloworld && cd helloworld
  1. 接下來要建立及編輯檔案。您可以使用 nano 或 Cloud Shell 程式碼編輯器 (在 Cloud Shell 點選「開啟編輯器」即可開啟)。

  2. 建立 package.json 檔案,並加入以下內容:

nano package.json { "name": "helloworld", "description": "Simple hello world sample in Node", "version": "1.0.0", "main": "index.js", "scripts": { "start": "node index.js" }, "author": "Google LLC", "license": "Apache-2.0", "dependencies": { "express": "^4.17.1" } }

最重要的是,上述檔案包含 start 指令碼,以及 Express 網頁應用程式框架的依附元件。

  1. 依序按下 Ctrl+X 鍵、Y 鍵和 Enter 鍵,儲存 package.json 檔案。

  2. 接著,在同一個目錄中建立 index.js 檔案,然後將下列幾行內容複製到檔案中:

nano index.js const express = require('express'); const app = express(); const port = process.env.PORT || 8080; app.get('/', (req, res) => { const name = process.env.NAME || 'World'; res.send(`Hello ${name}!`); }); app.listen(port, () => { console.log(`helloworld: listening on port ${port}`); });

這段程式碼會建立基本的網路伺服器,用於監聽 PORT 環境變數定義的通訊埠。應用程式現已完成,您可以開始將應用程式容器化,並上傳至 Artifact Registry。

  1. 依序按下 Ctrl+X 鍵、Y 鍵和 Enter 鍵,儲存 index.js 檔案。
注意:Cloud Run 支援多種語言。如需 Go、Python、Java、PHP、Ruby、Cloud Shell 指令碼和其他語言的操作說明,請參閱快速入門指南

工作 3:建立 Artifact Registry 存放區

在這項工作中,您將在 Artifact Registry 建立存放區。這個存放區會做為容器映像檔的儲存位置,讓 Google Cloud 服務能存取及提取這些映像檔。

  1. 在您的區域建立名為 my-repository 的 Docker 存放區:
gcloud artifacts repositories create my-repository \ --repository-format=docker \ --location=$LOCATION \ --description="Docker repository"
  1. 設定 Docker 以驗證對您所在區域 Artifact Registry 的要求:
gcloud auth configure-docker $LOCATION-docker.pkg.dev

點選「Check my progress」,確認目標已達成。 建立 Artifact Registry 存放區

工作 4:將應用程式容器化並上傳至 Artifact Registry

在這項工作中,您要將範例應用程式容器化,並將映像檔推送至 Artifact Registry。

  1. 為了將範例應用程式容器化,請在來源檔案所在的目錄中建立名為 Dockerfile 的新檔案。這個檔案就像一份食譜,用來指示 Docker 該如何建構映像檔:
nano Dockerfile # Use the official lightweight Node.js 12 image. # https://hub.docker.com/_/node FROM node:20-slim # Create and change to the app directory. WORKDIR /usr/src/app # Copy application dependency manifests to the container image. # A wildcard is used to ensure copying both package.json AND package-lock.json (when available). # Copying this first prevents re-running npm install on every code change. COPY package*.json ./ # Install production dependencies. # If you add a package-lock.json, speed your build by switching to 'npm ci'. # RUN npm ci --only=production RUN npm install --only=production # Copy local code to the container image. COPY . ./ # Run the web service on container startup. CMD [ "npm", "start" ]
  1. 依序按下 Ctrl+X 鍵、Y 鍵和 Enter 鍵,儲存 Dockerfile 檔案。

  2. 接著,從內含 Dockerfile 的目錄執行下列指令,透過 Cloud Build 建立容器映像檔。請留意指令中的 $GOOGLE_CLOUD_PROJECT 環境變數,其中包含這個實驗室的專案 ID:

gcloud builds submit --tag $LOCATION-docker.pkg.dev/$GOOGLE_CLOUD_PROJECT/my-repository/helloworld

Cloud Build 服務會在 Google Cloud 執行您的建構內容。這項服務會執行一系列的建構步驟,而每個步驟都會在 Docker 容器執行,以便產生應用程式容器或其他構件,並推送至 Artifact Registry。上述所有操作只需一個指令就能完成。

容器推送到 Artifact Registry 後,您會看到包含映像檔名稱的「SUCCESS」訊息。映像檔會儲存在 Artifact Registry,日後可以視需求重複使用。

  1. 為透過 Cloud Shell 在本機執行並測試應用程式,請使用下列標準 docker 指令啟動應用程式:
docker run -d -p 8080:8080 $LOCATION-docker.pkg.dev/$GOOGLE_CLOUD_PROJECT/my-repository/helloworld
  1. 點選 Cloud Shell 視窗中的「網頁預覽」,然後選取「透過以下通訊埠預覽:8080」

此操作應會開啟瀏覽器視窗,並顯示「Hello World!」的訊息。您也可以直接使用 curl localhost:8080 指令。

點選「Check my progress」,確認目標已達成。 將應用程式容器化並上傳至 Artifact Registry

工作 5:部署至 Cloud Run

在這項工作中,您會將容器化應用程式部署至 Cloud Run。這個程序會啟動一項服務,能透過安全的 HTTPS 網址回應網頁要求。

  1. 執行下列指令,將容器化應用程式部署至 Cloud Run:
gcloud run deploy helloworld \ --image $LOCATION-docker.pkg.dev/$GOOGLE_CLOUD_PROJECT/my-repository/helloworld \ --allow-unauthenticated \ --region=$LOCATION

上述指令中的 allow-unauthenticated 旗標會將您的服務設為可公開存取。

  1. 如果系統提示您啟用 API,請輸入 Y

稍候片刻,等待部署作業完成。部署成功後,指令列會顯示服務網址:

Service [helloworld] revision [helloworld-00001-xit] has been deployed and is serving 100 percent of traffic. Service URL: https://helloworld-h6cp412q3a-uc.a.run.app

您現在可透過任一瀏覽器視窗開啟服務網址,查看已部署的容器。

恭喜!您已將封裝在容器映像檔的應用程式部署到 Cloud Run。Cloud Run 會自動水平擴充容器映像檔以處理收到的要求,並在需求減少時縮減規模。在您自己的環境中,您只需為處理要求期間使用的 CPU、記憶體和網路付費。

本實驗室的各項操作都是透過 gcloud 指令列執行。您也可以透過 Cloud 控制台使用 Cloud Run。

  1. 前往 Google Cloud 控制台,依序點選「導覽選單」圖示「導覽選單」圖示 和「Cloud Run」,即可看到 helloworld 服務:

Cloud Run 分頁,顯示 helloworld 服務

點選「Check my progress」,確認目標已達成。 在 Cloud Run 部署容器化應用程式。

工作 6:清除所用資源

在這項工作中,您將刪除已部署的服務和容器映像檔,以免產生後續費用。

不使用服務時,Cloud Run 不會收費,但您可能仍須支付已建構容器映像檔的儲存費用。

  1. 使用下列指令即可刪除 helloworld 映像檔:
gcloud artifacts docker images delete $LOCATION-docker.pkg.dev/$GOOGLE_CLOUD_PROJECT/my-repository/helloworld
  1. 系統提示您繼續操作時,請輸入 Y 並按下 Enter 鍵。

  2. 如要刪除 Cloud Run 中的服務,請執行下列指令:

gcloud run services delete helloworld --region={{{project_0.default_region | "REGION"}}}
  1. 系統提示您繼續操作時,請輸入 Y 並按下 Enter 鍵。

關閉研究室

如果您已完成實驗室,請點選「End Lab」。Google Skills 會清除您使用的資源和帳戶。

您可以為實驗室的使用體驗評分。請選取合適的星級評等並提供意見,然後按一下「Submit」

星級評等代表您的滿意程度:

  • 1 星 = 非常不滿意
  • 2 星 = 不滿意
  • 3 星 = 普通
  • 4 星 = 滿意
  • 5 星 = 非常滿意

如果不想提供意見回饋,您可以直接關閉對話方塊。

如有任何想法、建議或指教,請透過「Support」分頁提交。

恭喜!

您已完成這個實驗室的所有工作!

後續步驟/瞭解詳情

如要進一步瞭解如何從程式碼來源建構適用於 Cloud Run 的無狀態 HTTP 容器,並推送至 Artifact Registry,請參閱下列資源:

Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

使用无痕模式或无痕浏览器窗口是运行此实验的最佳方式。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。