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

新手求助:在Google Cloud Console运行Storage Bucket中的Python脚本

运行Google Cloud Storage Bucket中Python脚本的实操方法

嘿,刚接触GCP的话确实容易摸不着头绪,我当初也踩过这个坑,给你整理几个靠谱的实操方法,一步步来就能搞定:

方法一:用Cloud Shell直接运行(最适合新手快速测试)

这是最简单的方式,不需要额外部署服务,直接在控制台的终端里操作:

  • 打开Google Cloud Console,点击顶部工具栏里的>_图标,启动Cloud Shell
  • 把Bucket里的脚本下载到Cloud Shell本地目录,执行命令:
    gsutil cp gs://你的存储桶名称/你的脚本文件名.py .
    
    (末尾的.代表当前目录,别漏了)
  • 检查Python环境(Cloud Shell默认自带Python3),直接运行脚本:
    python3 你的脚本文件名.py
    
  • 如果脚本需要依赖包,先安装依赖:
    pip install 你的依赖包名称
    

方法二:用Cloud Functions触发运行(适合自动触发场景)

如果你的脚本需要在特定事件(比如有文件上传到Bucket时)自动运行,用Cloud Functions最合适:

  • 在Cloud Console搜索「Cloud Functions」进入页面,点击「创建函数」
  • 基本信息里填好函数名,触发器选择「Cloud Storage」,事件类型选「对象最终创建时」,然后关联你的目标存储桶
  • 运行环境选择对应的Python版本(比如3.11),把Bucket里的脚本内容复制粘贴到main.py中,注意要写一个入口函数(Cloud Functions要求必须有入口),比如:
    def hello_gcs(event, context):
        # 把你的脚本逻辑放在这里
        print("脚本开始运行")
        # 示例:读取触发事件对应的Bucket文件内容
        import google.cloud.storage
        storage_client = google.cloud.storage.Client()
        bucket = storage_client.get_bucket(event['bucket'])
        blob = bucket.blob(event['name'])
        content = blob.download_as_text()
        print(content)
    
  • 如果脚本有依赖包,在requirements.txt里列出(比如google-cloud-storage==2.13.0),然后点击「部署」
  • 部署完成后,你可以手动上传一个测试文件到Bucket触发运行,或者在Cloud Functions页面点击「测试」按钮验证

方法三:用Cloud Run部署运行(适合长期运行或Web类脚本)

如果你的脚本需要长期运行,或者是提供Web服务的Python程序,用Cloud Run更合适:

  • 先把你的Python脚本和依赖打包成Docker镜像,写一个简单的Dockerfile:
    FROM python:3.11-slim
    WORKDIR /app
    # 复制依赖文件并安装
    COPY requirements.txt .
    RUN pip install --no-cache-dir -r requirements.txt
    # 复制你的脚本文件
    COPY 你的脚本文件名.py .
    # 设置运行命令
    CMD ["python", "你的脚本文件名.py"]
    
  • 把Dockerfile、requirements.txt和脚本文件上传到Cloud Shell,然后用Cloud Build构建镜像:
    gcloud builds submit --tag gcr.io/你的GCP项目ID/自定义镜像名称 .
    
  • 在Cloud Console搜索「Cloud Run」,点击「创建服务」,选择刚才构建的镜像,配置好CPU、内存等资源,然后点击「部署」
  • 部署完成后,你可以点击服务页面的「测试」按钮手动触发运行,或者用Cloud Scheduler设置定时任务定期运行

一些注意事项

  • 确保你的账号有对应的权限:比如读取Storage Bucket的Storage Object Viewer角色,部署Cloud Functions/Run的Cloud Functions Developer或Cloud Run Developer角色
  • 如果脚本需要访问其他GCP服务(比如BigQuery、Cloud SQL),要给对应的服务账号配置权限(比如Cloud Functions的默认服务账号)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 17:42:26