總覽
本研究室將幫助您熟悉 Google Cloud 網頁式介面。我們提供兩種整合式環境:
- 名為 Google Cloud 控制台的 GUI 環境
- 名為 Cloud Shell 的指令列介面,已預先安裝 Cloud SDK 提供的指令
本課程中會用到上述兩種環境。
以下是有關 Google Cloud 控制台的須知事項:
- 我們仍在持續開發 Google Cloud 控制台,因此圖形版面配置偶爾會改變。這些變更通常是為了配合 Google Cloud 新功能或技術異動而推出,會造成工作流程略有不同。
- 您可以在 Google Cloud 控制台中執行大多數常見的 Google Cloud 操作。新功能有時會先導入 Cloud SDK,然後才在 Google Cloud 控制台中開放使用。
- Google Cloud 控制台能夠以極快的速度完成某些活動,並可代替您執行可能需要不少指令列操作的多種動作。
- 對自動化作業而言,Cloud SDK 中的指令是很實用的工具。
目標
在本研究室中,您將可:
- 瞭解如何存取 Google Cloud 控制台和 Cloud Shell
- 熟悉 Google Cloud 控制台
- 熟悉各項 Cloud Shell 功能,包括 Cloud Shell 編輯器
- 瞭解如何使用 Google Cloud 控制台與 Cloud Shell 建立值區、VM 和服務帳戶
- 瞭解如何在 Cloud Shell 中執行其他指令
設定研究室
存取 Qwiklabs
每個實驗室都會提供新的 Google Cloud 專案和一組資源,讓您在時限內免費使用。
-
按一下「Start Lab」按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:
- 「Open Google Cloud console」按鈕
- 剩餘時間
- 必須在這個研究室中使用的臨時憑證
- 完成這個實驗室所需的其他資訊 (如有)
-
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」。
接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」。
-
如有必要,請將下方的 Username 貼到「登入」對話方塊。
{{{user_0.username | "Username"}}}
您也可以在「Lab Details」窗格找到 Username。
-
點選「下一步」。
-
複製下方的 Password,並貼到「歡迎使用」對話方塊。
{{{user_0.password | "Password"}}}
您也可以在「Lab Details」窗格找到 Password。
-
點選「下一步」。
重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。
注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
-
按過後續的所有頁面:
- 接受條款及細則。
- 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
- 請勿申請免費試用。
Google Cloud 控制台稍後會在這個分頁開啟。
注意:如要查看列出 Google Cloud 產品和服務的選單,請點選左上角的「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。
完成初始登入步驟後,就會看到專案資訊主頁。

工作 1:探索 Google Cloud 控制台
在這項工作中,您將探索 Google Cloud 控制台並建立資源。
確認已選取專案
-
在 Google Cloud 控制台標題列中,點選「選取專案」下拉式清單,然後選取 Qwiklabs 提供的專案 ID,這個 ID 會與驗證憑證一併提供。
-
專案 ID 的格式為 [qwiklabs-gcp-],後面加上一長串十六進位數字。
-
按一下「取消」即可關閉對話方塊。
標題列應該會顯示專案 ID,如下方螢幕截圖所示。Qwiklabs 環境中的每個研究室都有專屬的專案 ID 和驗證憑證。

前往 Google Cloud Storage 並建立值區
Cloud Storage 可讓您在世界各地隨時儲存及擷取大小不限的資料。這項服務有多種用途,包括提供網站內容、儲存資料以供封存和災難復原之用,或是透過直接下載功能,將大型資料物件提供給使用者。
Cloud Storage bucket 必須設定全域不重複名稱。在貴機構中,您應該按照 Google Cloud 的 Cloud Storage 最佳做法指南操作。而在本研究室中,Qwiklabs 已為我們建立 Google Cloud 專案,由於 Google Cloud 專案 ID 也是全域不重複,因此只要使用該專案的 ID,就能輕鬆設定不重複的值區名稱。
-
前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「Cloud 總覽」>「資訊主頁」。
-
在「資訊主頁」分頁中,「專案資訊」部分會列出您的 Google Cloud 專案 ID。
-
選取並複製專案 ID。這個 ID 是由 Qwiklabs 為您建立,因此格式為 [qwiklabs-gcp-],後面加上一長串十六進位數字。
-
前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「Cloud Storage」>「bucket」。
-
點選「建立 bucket」。
-
在 bucket 名稱部分,貼上您在先前步驟複製的 Google Cloud 專案 ID 字串。這個實驗室的後續操作說明會以 [BUCKET_NAME]
表示您輸入的名稱。
-
點選「Continue」(繼續)。
-
在「Location Type」(位置類型) 下方選取「Region」(區域),然後在下拉式選單中選取「」。
-
點選「Continue」(繼續)。
-
點選「選取如何控制物件的存取權」,並取消勾選「強制禁止公開存取這個值區」,然後選取「精細」。
-
點選「Continue」(繼續)。
-
保留其他所有值的預設狀態。
-
按一下「建立」。
注意:Google Cloud 控制台會顯示「通知」圖示
,當中有時會提供基礎指令傳回的內容。您可以點選該圖示來查看通知,瀏覽其他資訊和記錄。
建立虛擬機器 (VM) 執行個體
Google Compute Engine 以服務的形式提供在 Google 的資料中心和網路上運作的虛擬機器,而 Google Kubernetes Engine 採用 Compute Engine 做為架構元件。因此,在瞭解 Google Kubernetes Engine 前,先掌握一些有關 Compute Engine 的知識會很有幫助。
- 從「導覽選單」
依序點選「Compute Engine」>「VM 執行個體」。
- 點選「建立執行個體」。
- 在「Name」(名稱) 部分,輸入 first-vm 做為執行個體的名稱。
- 在「Region」(區域) 部分,選取「」。
- 在「Zone」(可用區) 部分,選取「」。
- 在「Machine type」(機器類型) 部分,查看各個選項。
注意:機型選單會列出虛擬 CPU 的數量、記憶體容量和代表類型的名稱,例如「e2-medium」。透過 gcloud
指令建立 VM 時,這類名稱是用於選取機型的參數。區域、可用區和機型的右側會顯示每月預估費用。
- 點選「機型」清單右側的「預估每月費用」,查看預估費用細目。
- 在「機型」部分,依序點選「標準」>「e2-standard-2」。
請留意費用如何變化。
- 在「機型」部分,依序按一下「共用核心」>「e2-micro」。
Micro 類型是定價親民的共用核心 VM。
- 從左側窗格前往「網路」,然後選擇「防火牆」下方的「允許 HTTP 流量」。
- 其餘設定保持預設狀態,然後按一下「建立」。
請等待新的 VM 建立完成。
查看 VM 詳細資料
- 在「VM 執行個體」頁面中,按一下 VM 名稱「first-vm」。
- 請留意「機器設定」中的「CPU 平台」值。
- 按一下頂端的鉛筆圖示來編輯「
first-vm
」執行個體。
注意:若 Google Cloud VM 正在執行中,您便無法變更機型、CPU 平台或可用區。您可以新增網路標記,並允許來自網際網路的特定網路流量通過防火牆。 VM 具有一些本身不可或缺的屬性,這些屬性在 VM 建立時就已設定,而且無法變更。其他屬性則可編輯。舉例來說,您可以新增磁碟,也可決定是否在刪除執行個體時一併刪除開機磁碟。
- 向下捲動至「管理」部分,並查看「可用性政策」。
注意:Compute Engine 提供的 Spot VM 執行個體雖然每小時的費用較低,但隨時有可能遭到 Google Cloud 終止。這類 Spot 執行個體可讓您省下大筆費用,不過請務必確認工作負載適合可能中斷的運作方式。
您不能將非 Spot 執行個體轉換為 Spot 執行個體,且須在建立 VM 時做出選擇。
如有任何原因 (例如服務中斷或硬體故障) 造成 VM 停止,自動重啟功能會再次啟動 VM。這是您想要的運作方式嗎?您的應用程式是否採用冪等設計 (編寫方式可妥善處理第二次啟動作業)?
主機維護期間,系統會將 VM 設為即時遷移。不過,您可以選擇終止 VM,而不進行遷移。
如果您做出變更,有時可能需要幾分鐘才會生效,尤其在涉及新增防火牆或變更外部 IP 等網路異動時,更是如此。
- 按一下「取消」。
建立 IAM 服務帳戶
IAM 服務帳戶是應用程式或虛擬機器擁有的特殊 Google 帳戶類型,不歸個別使用者所有。
- 從「導覽選單」依序點選「IAM 與管理」>「服務帳戶」。
- 點選「+ 建立服務帳戶」。
- 在「服務帳戶詳細資料」頁面上,將「服務帳戶名稱」設為
test-service-account
。
- 按一下「建立並繼續」。
- 在「將專案存取權授予這個服務帳戶」頁面的角色選單中,依序選取「基本」>「編輯者」。
- 點選「Continue」(繼續)。
- 按一下「完成」。
- 在「服務帳戶」頁面上,按一下
test-service-account
最右側的三點圖示。
- 點選「管理金鑰」。
- 點選「新增金鑰」。
- 選取「建立新的金鑰」。
- 選取「JSON」做為金鑰類型。
- 按一下「建立」。
系統會下載 JSON 金鑰檔案。在後續步驟中,您需要找出這個金鑰檔案並上傳到 VM。
- 按一下「關閉」。
點選「Check my progress」,確認目標已達成。建立 bucket、設有必要防火牆規則的 VM 執行個體,以及 IAM 服務帳戶
工作 2:探索 Cloud Shell
Cloud Shell 可讓您直接在瀏覽器中使用指令列存取雲端資源。透過 Cloud Shell,您隨時都能使用通過完整驗證的最新 Cloud SDK 指令列工具,例如 gcloud。
Cloud Shell 提供下列功能:
- 臨時 Compute Engine VM
- 透過瀏覽器使用指令列存取執行個體
- 5 GB 的永久磁碟儲存空間 (
$HOME dir
)
- 預先安裝的 Cloud SDK 和其他工具
-
gcloud
:適用於 Compute Engine、Google Kubernetes Engine (GKE) 和許多 Google Cloud 服務
-
gcloud storage
和 gsutil
:適用於 Cloud Storage
-
kubectl
:適用於 GKE 和 Kubernetes
-
bq
:適用於 BigQuery
- 支援 Java、Go、Python、Node.js、PHP 和 Ruby 程式語言
- 網頁預覽功能
- 內建的資源與執行個體存取權授權機制
系統會回收閒置超過一小時的 Cloud Shell 執行個體,只保留 /home
目錄。系統設定 (包括環境變數) 的所有變更都會在切換工作階段時遺失。
在這項工作中,您將使用 Cloud Shell 建立及檢查資源。
開啟 Cloud Shell 並探索當中的功能
- 在 Google Cloud 控制台的標題列中,按一下「啟用 Cloud Shell」圖示
。
- 出現提示訊息時,請點選「繼續」。
Cloud Shell 會在 Google Cloud 控制台視窗的底部開啟。
Cloud Shell 工具列的最右側會顯示下列圖示:
-
隱藏/還原:點選這個圖示可隱藏或還原視窗,讓您不必關閉 Cloud Shell 就能使用 Google Cloud 控制台的所有功能。
-
在新視窗中開啟:發送個別指令時,將 Cloud Shell 顯示在 Google Cloud 控制台底部會很方便。不過,如果您想編輯檔案或查看指令的所有輸出內容,點選這個圖示即可在完整大小的終端機視窗中顯示 Cloud Shell。
-
關閉所有分頁:點選這個圖示會關閉 Cloud Shell。每當關閉 Cloud Shell 時,系統都會回收虛擬機器,與機器相關的所有資訊也都會遺失。不過,下次啟動 Cloud Shell 時,您還是可以使用主目錄中儲存的資料。
使用 Cloud Shell 設定這項工作的環境變數
請在 Cloud Shell 中使用下列指令,定義這項工作所用的環境變數。
- 將 [BUCKET_NAME] 替換成工作 1 中第一個值區的名稱。
- 將 [BUCKET_NAME_2] 替換成您自行選擇的全域不重複名稱。
- 在 Cloud Shell 執行下列指令,建立環境變數:
MY_BUCKET_NAME_1=[BUCKET_NAME]
MY_BUCKET_NAME_2=[BUCKET_NAME_2]
MY_REGION={{{project_0.default_region | "REGION"}}}
注意:編寫指令碼或透過 Cloud Shell 執行作業時,建立環境變數是不錯的做法。您可以重複使用這些環境變數,不但操作起來輕鬆,也較不容易出錯。
注意:請務必將 [BUCKET_NAME]
等預留位置字串完全替換成您選擇的不重複名稱,例如 MY_BUCKET_NAME_1=unique_bucket_name
。
將先前建立的憑證檔案移至 Cloud Shell 中
在先前的工作中建立第一個 IAM 服務帳戶時,您下載了採用 JSON 編碼的憑證檔案。
- 在本機工作站上找出剛才下載的 JSON 金鑰,並將該檔案重新命名為
credentials.json
。
- 在 Cloud Shell 中,點選 Cloud Shell 工具列中的「三點圖示選單」圖示
,即可顯示更多選項。
- 點選「上傳」,然後選擇本機電腦中的
credentials.json
檔案。
- 點選「開啟」。
- 點選「上傳」,將
credentials.json
檔案轉移至 Cloud Shell VM。
- 點選「X」圖示,即可關閉用來上傳檔案的彈出式視窗。
- 在 Cloud Shell 中輸入 ls,然後按下 ENTER 鍵確認檔案已上傳完成。
在 Google Cloud 控制台建立第二個 Cloud Storage bucket 並確認
有了 gcloud storage
和 gsutil
指令,您就能透過指令列使用 Cloud Storage。
在這項工作中,您將透過 Cloud Shell 執行 gcloud storage
指令。
- 在 Cloud Shell 執行
gcloud storage
指令來建立 bucket:
gcloud storage buckets create gs://$MY_BUCKET_NAME_2 --location={{{project_0.default_region | REGION}}}
如果出現提示訊息,請點選「Authorize」(授權)。
- 前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「Cloud Storage」>「bucket」。如果您已在「Cloud Storage」頁面,請點選「重新整理」。
「bucket」清單中應該會出現第二個 bucket。
使用 gcloud 指令列建立第二個虛擬機器
- 在 Cloud Shell 中執行以下指令,列出指定區域的所有可用區:
gcloud compute zones list | grep $MY_REGION
- 從清單的第一欄中選取可用區。請注意,Google Cloud 可用區名稱的格式為所屬區域名稱後面加上一個連字號和一個字母。
您可以選擇工作 1 中第一個 VM 使用的可用區,或是其他可用區。
- 執行下列指令,將所選可用區儲存在環境變數中。
[ZONE]
應替換成您選擇的可用區:
MY_ZONE=[ZONE]
- 執行下列指令,將這個可用區設為預設可用區:
gcloud config set compute/zone $MY_ZONE
- 執行下列指令,儲存一個名稱到稍後用來建立 VM 的環境變數中。請將第二個 VM 命名為
second-vm
:
MY_VMNAME=second-vm
- 在這項工作中先前設定的預設可用區建立 VM,並以新的環境變數來指派 VM 名稱:
gcloud compute instances create $MY_VMNAME \
--machine-type "e2-standard-2" \
--image-project "debian-cloud" \
--image-family "debian-11" \
--subnet "default"
- 列出專案中的虛擬機器執行個體:
gcloud compute instances list
清單中會顯示第一個虛擬機器和新建立的虛擬機器。
-
前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「Compute Engine」>「VM 執行個體」。與 gcloud compute instances list
指令的輸出內容相同,這個頁面也會顯示您建立的兩個虛擬機器。
-
查看「外部 IP」資料欄。請注意,您所建立第一個 VM 的外部 IP 位址會顯示為連結 (有時必須點選「隱藏資訊面板」按鈕,才能看到「外部 IP」資料欄)。由於您將這個 VM 的防火牆設為允許 HTTP 流量,因此 Google Cloud 控制台會提供連結。
-
點選第一個 VM「外部 IP」資料欄中的連結。瀏覽器會在新分頁中顯示「連線遭拒」的訊息,這是因為雖然有防火牆通訊埠允許 HTTP 流量傳送至 VM,VM 內卻沒有運作中的網路伺服器。請關閉剛剛建立的瀏覽器分頁。
注意事項:如果畫面中出現「不支援安全連線」的彈出式視窗,請點選「繼續造訪網站」來繼續操作。
使用 gcloud 指令列建立第二個服務帳戶
- 在 Cloud Shell 中執行下列指令,建立新的服務帳戶:
gcloud iam service-accounts create test-service-account2 --display-name "test-service-account2"
注意:如果看到以下輸出內容,請輸入「Y」並按下 ENTER 鍵:
API [iam.googleapis.com] not enabled on project [560255523887]. Would
you like to enable and retry (this will take a few minutes)? (y/N)?
- 前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「IAM 與管理」>「服務帳戶」。
注意:請重新整理頁面,直到看見「test-service-account2」為止。
點選「Check my progress」,確認目標已達成。建立第二個 bucket、VM 執行個體和 IAM 服務帳戶
- 在 Cloud Shell 中執行下列指令,將
viewer
角色授予第二個服務帳戶:
gcloud projects add-iam-policy-binding $GOOGLE_CLOUD_PROJECT --member serviceAccount:test-service-account2@${GOOGLE_CLOUD_PROJECT}.iam.gserviceaccount.com --role roles/viewer
注意:Cloud Shell 會自動填入 GOOGLE_CLOUD_PROJECT
環境變數,並將這個變數設為當前環境的專案 ID。
-
前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「IAM 與管理」>「身分與存取權管理」。
-
您會看到系統將新的服務帳戶 test-service-account2
列為 viewer
角色的成員。
工作 3:在 Cloud Shell 中使用 Cloud Storage
將檔案下載至 Cloud Shell 並複製到 Cloud Storage
- 從 Google 提供的 Cloud Storage bucket,將貓咪圖片複製到 Cloud Shell:
gcloud storage cp gs://cloud-training/ak8s/cat.jpg cat.jpg
- 將檔案複製到先前建立的第一個 bucket:
gcloud storage cp cat.jpg gs://$MY_BUCKET_NAME_1
- 將檔案從第一個 bucket 複製到第二個 bucket:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg gs://$MY_BUCKET_NAME_2/cat.jpg
- 前往 Google Cloud 控制台,依序點選「導覽選單」圖示
>「Cloud Storage」>「bucket」,選取您建立的兩個 bucket,並確認兩者皆含有 cat.jpg
檔案。
設定 Cloud Storage 物件的存取控管清單
-
如要取得指派給 cat.jpg
的預設存取清單 (將檔案上傳到 Cloud Storage bucket 時可獲派該清單),請執行下列兩個指令。
-
首先,在 Cloud Shell 中執行下列指令:
gsutil acl get gs://$MY_BUCKET_NAME_1/cat.jpg > acl.txt
cat acl.txt
輸出內容應該會與下方示例類似,只是數字不同。這項輸出內容指出,取得專案 owner
、editor
或 viewer
角色的使用者都具有存取權 (擁有者和編輯者具備 OWNER
權限,檢視者則具備 READER
權限)。
[
{
"entity": "project-owners-560255523887",
"projectTeam": {
"projectNumber": "560255523887",
"team": "owners"
},
"role": "OWNER"
},
{
"entity": "project-editors-560255523887",
"projectTeam": {
"projectNumber": "560255523887",
"team": "editors"
},
"role": "OWNER"
},
{
"entity": "project-viewers-560255523887",
"projectTeam": {
"projectNumber": "560255523887",
"team": "viewers"
},
"role": "READER"
},
{
"email": "google12345678_student@qwiklabs.net",
"entity": "user-google12345678_student@qwiklabs.net",
"role": "OWNER"
}
]
- 接著,如要將物件改為僅限私人存取,請執行下列指令:
gsutil acl set private gs://$MY_BUCKET_NAME_1/cat.jpg
- 如要確認指派給
cat.jpg
的新 ACL,請執行下列兩個指令:
gsutil acl get gs://$MY_BUCKET_NAME_1/cat.jpg > acl-2.txt
cat acl-2.txt
輸出內容應該會與下方示例類似。
[
{
"email": "google12345678_student@qwiklabs.net",
"entity": "user-google12345678_student@qwiklabs.net",
"role": "OWNER"
}
]
現在,只有物件的原始建立者 (即您的研究室帳戶) 具備 OWNER
權限。
在 Cloud Shell 中以服務帳戶的身分進行驗證
- 在 Cloud Shell 中執行下列指令,查看目前的設定:
gcloud config list
輸出內容應如下所示。這些內容中的可用區應為在工作 2 中建立第二個 VM 時所設定的可用區。此外,帳戶和專案也應符合您的 Qwiklabs 研究室憑證。
[component_manager]
disable_update_check = True
[compute]
gce_metadata_read_timeout_sec = 30
zone = {{{project_0.default_zone | "ZONE"}}}
[core]
account = google12345678_student@qwiklabs.net
disable_usage_reporting = False
project = qwiklabs-Google Cloud-1aeffbc5d0acb416
[metrics]
environment = devshell
Your active configuration is: [cloudshell-16441]
- 在 Cloud Shell 執行下列指令,透過您下載至本機並上傳到 Cloud Shell 的憑證 (
credentials.json
),將通過驗證的使用者變更為先前工作中建立的第一個服務帳戶:
gcloud auth activate-service-account --key-file credentials.json
Cloud Shell 現在已經以 test-service-account
的身分通過驗證。
- 如要確認使用中的帳戶,請執行下列指令:
gcloud config list
輸出內容應如下所示。帳戶現已設為 test-service-account
服務帳戶。
[component_manager]
disable_update_check = True
[compute]
gce_metadata_read_timeout_sec = 30
zone = {{{project_0.default_zone | "ZONE"}}}
[core]
account = test-service-account@qwiklabs-Google Cloud-1aeffbc5d0acb416.iam.gserviceaccount.com
disable_usage_reporting = False
project = qwiklabs-Google Cloud-1aeffbc5d0acb416
[metrics]
environment = devshell
Your active configuration is: [cloudshell-16441]
- 如要透過 Cloud Shell 驗證授權帳戶清單,請執行下列指令:
gcloud auth list
輸出內容應該會與下方示例類似。
Credentialed Accounts
ACTIVE:
ACCOUNT: student-03-5165fd82c14b@qwiklabs.net
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- 如要確認目前的帳戶 (
test-service-account
) 無法存取第一個值區中的 cat.jpg
檔案,請執行下列指令:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg ./cat-copy.jpg
您先前在這項工作中只將這個檔案的存取權授予擁有者,輸出內容應如下所示:
輸出內容
ERROR: (gcloud.storage.cp) HTTPError 403:
- 確認目前的帳戶 (
test-service-account
) 可以存取您所建立第二個 bucket 中的 cat.jpg
檔案:
gcloud storage cp gs://$MY_BUCKET_NAME_2/cat.jpg ./cat-copy.jpg
這個檔案的存取權並未設限,輸出內容應如下所示:
Copying gs://test-bucket-123/cat.jpg...
- [1 files][ 81.7 KiB/ 81.7 KiB]
Operation completed over 1 objects/81.7 KiB.
- 執行下列指令來切換至實驗室帳戶,其中的 [USERNAME] 請替換為「連線詳細資料」窗格 (位於實驗室操作說明頁面左側) 中的使用者名稱:
gcloud config set account [USERNAME]
- 如要確認您是否能存取 [BUCKET_NAME] 值區 (先前建立的第一個值區) 中的
cat.jpg
檔案,請執行下列指令:
gcloud storage cp gs://$MY_BUCKET_NAME_1/cat.jpg ./copy2-of-cat.jpg
輸出內容應如下所示。物件的存取控管清單 (ACL) 轉換為不公開時,建立 bucket 和物件的實驗室帳戶依然是擁有者,因此這個帳戶仍可存取該物件。
Copying gs://test-bucket-123/cat.jpg...
- [1 files][ 81.7 KiB/ 81.7 KiB]
Operation completed over 1 objects/81.7 KiB.
- 將第一個 Cloud Storage bucket 設為開放所有人讀取,包括未經驗證的使用者:
gsutil iam ch allUsers:objectViewer gs://$MY_BUCKET_NAME_1
注意:這項設定適用於在 Cloud Storage 中託管公開的網站內容。
-
前往 Cloud 控制台,依序點選「導覽選單」圖示
>「Cloud Storage」>「bucket」。
-
選取由您建立且具備專案 ID 的第一個 Storage bucket。請注意,cat.jpg
檔案具備 Public access
。
-
點選「複製網址」即可複製連結。
-
開啟新的無痕模式瀏覽器分頁,並在網址列中貼上該連結。畫面上會顯示貓咪圖片。請將這個瀏覽器分頁保持開啟。
點選「Check my progress」,確認目標已達成。在 Cloud Shell 中使用 Cloud Storage
工作 4:探索 Cloud Shell 編輯器
在這項工作中,您將瞭解如何使用 Cloud Shell 程式碼編輯器。
開啟 Cloud Shell 編輯器
-
在 Cloud Shell 點選「開啟編輯器」圖示
。
-
在 Cloud Shell 編輯器,依序點選「File」>「Open Folder」。

- 點選「OK」。
資料夾隨即會開啟,左窗格也會顯示檔案和目錄清單。
- 按一下「Open Terminal」,然後在 Cloud Shell 中執行下列指令,以便複製
Git
存放區:
git clone https://github.com/googlecodelabs/orchestrate-with-kubernetes.git
Cloud Shell 編輯器視窗的左側窗格中會顯示 orchestrate-with-kubernetes
資料夾。
- 在 Cloud Shell 中執行下列指令,建立測試目錄:
mkdir test
現在 Cloud Shell 編輯器視窗的左側窗格中會顯示 test
資料夾。
- 在 Cloud Shell 編輯器中點選
orchestrate-with-kubernetes
左側的箭頭,以展開資料夾。

-
點選左側窗格中的 cleanup.sh
檔案,在 Cloud Shell 編輯器視窗的右側窗格中開啟該檔案。
-
在 cleanup.sh
檔案的最後一行新增下列文字:
echo Finished cleanup!
注意:不必執行任何操作來儲存所做的變更。
- 在 Cloud Shell 中執行下列指令,藉此變更目錄並顯示
cleanup.sh
的內容:
cd orchestrate-with-kubernetes
cat cleanup.sh
-
確認 cat cleanup.sh
的輸出內容包含您新增的文字。
-
前往 Cloud Shell 程式碼編輯器,在「orchestrate-with-kubernetes
」資料夾按一下右鍵,然後選取「New File」。
注意:如果收到「讀取已複製到剪貼簿的文字和圖片」的彈出式視窗提示,請按一下「允許」。
-
將檔案命名為 index.html。
-
點選「Save」。
-
將下列 HTML 文字貼到右窗格:
<html><head><title>Cat</title></head>
<body>
<h1>Cat</h1>
<img src="REPLACE_WITH_CAT_URL">
</body></html>
注意:請使用本機電腦的鍵盤快速鍵貼上文字。如果是 Mac 電腦,請按下 Cmd + V 鍵;如果是 Windows 或 Linux 電腦,請按下 Ctrl + V 鍵。
- 將
REPLACE_WITH_CAT_URL
字串替換成先前工作中的貓咪圖片網址,網址應與以下網址類似:
https://storage.googleapis.com/qwiklabs-Google Cloud-1aeffbc5d0acb416/cat.jpg
-
從「導覽選單」
依序點選「Compute Engine」>「VM 執行個體」。
-
在「first-vm」資料列,點選「SSH」按鈕。
-
在 VM 上開啟的「SSH 登入」視窗中,安裝 nginx
網路伺服器:
sudo apt-get remove -y --purge man-db
sudo touch /var/lib/man-db/auto-update
sudo apt-get update
sudo apt-get install nginx
注意:完成這項程序可能需要幾分鐘。如果出現提示訊息,請按 Y
鍵繼續操作。
- 在 Cloud Shell 視窗中,將透過 Cloud Shell 編輯器建立的 HTML 檔案複製到虛擬機器:
gcloud compute scp index.html first-vm:index.nginx-debian.html --zone={{{project_0.default_zone | "ZONE"}}}
注意:如果系統詢問是否要將主機金鑰新增到已知主機清單,請回答 Y。
注意:如果系統提示您輸入通關密語,請按 Enter 鍵,使用空白的通關密語回應。當系統提示您確認空白通關密語時,再次按下 Enter 鍵。
- 在 VM 的「SSH 登入」視窗中,將 HTML 檔案從主目錄複製到
nginx
網路伺服器的文件根目錄:
sudo cp index.nginx-debian.html /var/www/html
點選「Check my progress」,確認目標已達成。安裝 nginx 網路伺服器並自訂歡迎頁面
-
從「導覽選單」
依序點選「Compute Engine」>「VM 執行個體」。
-
找到「first-vm」的「外部 IP」資料欄,點選當中的連結。注意:如果出現該網站不支援安全連線的訊息,請按一下「繼續造訪網站」。
新的瀏覽器分頁隨即開啟,當中會顯示含有貓咪圖片的網頁。
關閉研究室
如果您已完成研究室,請按一下「End Lab」(關閉研究室)。Google Cloud Skills Boost 會移除您使用的資源,並清除所用帳戶。
您可以針對研究室的使用體驗評分。請選取合適的星級評等並提供意見,然後按一下「Submit」(提交)。
星級評等代表您的滿意程度:
- 1 星 = 非常不滿意
- 2 星 = 不滿意
- 3 星 = 普通
- 4 星 = 滿意
- 5 星 = 非常滿意
如果不想提供意見回饋,您可以直接關閉對話方塊。
如有任何想法、建議或指教,請透過「Support」(支援) 分頁提交。
Copyright 2022 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。