You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Cloud Shell API从本地设备运行GCP Cloud Shell命令?

通过Cloud Shell API从本地执行GCP Cloud Shell命令

一、前置准备

  • 启用Cloud Shell API:在GCP控制台的API库中找到Cloud Shell API并完成启用操作
  • 安装并初始化gcloud CLI:在本地设备安装Google Cloud SDK,运行gcloud init完成账号认证和默认项目配置
  • 确保你的GCP账号拥有Cloud Shell相关权限,比如cloudshell.environments.run、cloudshell.environments.get等,可通过IAM角色分配(如Cloud Shell Developer角色)

二、使用gcloud CLI执行命令

1. 启动Cloud Shell实例(若未运行)

Cloud Shell实例默认会休眠,先启动实例:

gcloud cloud-shell environments start default

等待命令返回实例状态为RUNNING后,再执行后续操作。

2. 执行单条或多条命令

  • 单条命令直接运行:
gcloud cloud-shell run "echo 'Hello from local device'"
  • 多行命令或脚本内容,可使用Here Document避免本地解析:
gcloud cloud-shell run << 'EOF'
echo "当前工作目录: $(pwd)"
git --version
EOF

这里用单引号包裹EOF,确保Cloud Shell环境解析变量,而非本地shell。

3. 保存执行结果到本地

将Cloud Shell命令的输出重定向到本地文件:

gcloud cloud-shell run "cat /etc/os-release" > cloud-shell-system-info.txt

三、直接调用REST API执行命令

如果不想依赖gcloud CLI,可直接调用Cloud Shell的REST接口:

  1. 获取访问令牌:
gcloud auth print-access-token
  1. 用curl调用run端点执行命令:
curl -X POST "https://cloudshell.googleapis.com/v1/users/me/environments/default:run" \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    "command": "echo \"Hello via Cloud Shell REST API\""
  }'

响应的JSON数据中会包含命令的输出、执行状态等信息。

内容的提问来源于stack exchange,提问作者Irfan Emon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 04:45:33