☁️ gcloud 常用指令小抄
🧑💼 account:帳號管理
| 功能 |
指令 |
| 登入 |
gcloud auth login |
| 登出 |
gcloud auth revoke |
| 查看目前帳號 |
gcloud config get-value account |
| 設定預設帳號 |
gcloud config set account <ACCOUNT> |
| 列出所有帳號 |
gcloud auth list |
🏢 project:專案管理
| 功能 |
指令 |
| 列出所有可用的專案 |
gcloud projects list |
| 查看目前使用中的專案 |
gcloud config get-value project |
| 切換專案 |
gcloud config set project <PROJECT_ID> |
| 查看目前所有 config |
gcloud config list |
💻 compute:VM 實例管理
一般操作
| 功能 |
指令 |
| 列出所有 instance |
gcloud compute instances list |
| 查看 instance 詳細資訊 |
gcloud compute instances describe <INSTANCE> --zone=<ZONE> |
| 啟動 instance |
gcloud compute instances start <INSTANCE> --zone=<ZONE> |
| 關閉 instance |
gcloud compute instances stop <INSTANCE> --zone=<ZONE> |
| 刪除 instance |
gcloud compute instances delete <INSTANCE> --zone=<ZONE> |
SSH & 檔案傳輸
| 功能 |
指令 |
| SSH 連線 |
gcloud compute ssh <INSTANCE> --zone=<ZONE> |
| 上傳檔案 |
gcloud compute scp <LOCAL> <INSTANCE>:<REMOTE> --zone=<ZONE> |
| 下載檔案 |
gcloud compute scp <INSTANCE>:<REMOTE> <LOCAL> --zone=<ZONE> |
| rsync 資料夾 |
gcloud compute rsync <LOCAL_DIR> <INSTANCE>:<REMOTE_DIR> --zone=<ZONE> |
📦 scp 常用參數
| 參數 |
說明 |
--recurse 或 -r |
遞迴傳輸資料夾 |
--compress |
傳輸時壓縮(較快) |
--scp-flag="-C" |
額外傳入 scp flag,例如啟用壓縮 |
📦 storage:Cloud Storage 操作
| 功能 |
指令 |
| 列出 bucket |
gcloud storage buckets list |
| 建立 bucket |
gcloud storage buckets create <BUCKET> --location=<REGION> |
| 上傳檔案 |
gcloud storage cp <LOCAL> gs://<BUCKET>/ |
| 下載檔案 |
gcloud storage cp gs://<BUCKET>/<FILE> <LOCAL> |
| 刪除檔案 |
gcloud storage rm gs://<BUCKET>/<FILE> |
| 刪除 bucket |
gcloud storage buckets delete <BUCKET> |
🔁 Cloud Storage rsync
gcloud storage 支援類似 rsync 的功能來同步本地與 GCS 目錄:
上傳資料夾到 bucket
gcloud storage rsync -r ./local-folder gs://my-bucket/remote-folder
從 bucket 下載資料夾
gcloud storage rsync -r gs://my-bucket/remote-folder ./local-folder
🛠️ 常用參數
| 參數 |
說明 |
-r |
遞迴處理目錄(必要) |
-d |
刪除目標端中不存在的檔案(mirror 同步) |
-n |
模擬執行(dry run,不實際動作) |
-x "<REGEX>" |
排除符合正則的檔案 |
🧩 其他常用指令
設定與服務
| 功能 |
指令 |
| 查看目前所有 config |
gcloud config list |
| 清除設定 |
gcloud config unset <PROPERTY> |
| 啟用服務 |
gcloud services enable <SERVICE> |
| 停用服務 |
gcloud services disable <SERVICE> |
IAM 權限操作
| 功能 |
指令 |
| 查看 IAM 成員 |
gcloud projects get-iam-policy <PROJECT> |
| 新增 IAM 成員與角色 |
gcloud projects add-iam-policy-binding <PROJECT> --member="user:<EMAIL>" --role="roles/<ROLE>" |
🧠 小提醒
- 使用
get-value 取得設定值比 list 簡潔:
gcloud config get-value project
gcloud config get-value account
gcloud config get-value compute/zone
gcloud config get-value compute/region