Python 2 不再受社区支持。我们建议您将 Python 2 应用迁移到 Python 3

设置 Google Cloud Storage

您可以使用 Cloud Storage 存储分区存储和传送电影、图片或其他静态内容等文件。本文档介绍如何设置环境以使用适用于 Cloud Storage 的 App Engine 客户端库。

设置项目

按照创建留言板应用中的说明设置您的环境,创建 Cloud 项目,并了解如何在 App Engine 中设计 Python 2 应用的结构。记下并保存项目 ID,以便与应用搭配使用。

激活 Cloud Storage 存储分区

如需使用 Cloud Storage,您至少需要激活一个存储分区。 建议使用默认存储分区,它可以免费提供 5GB 的存储空间。如果您愿意,可以随时激活并使用其他 Cloud Storage 存储分区,但只有默认存储分区可免费提供 5GB 的存储空间。默认存储分区还包括 Cloud Storage I/O 操作的免费配额。请参阅价格、配额和限制了解详情。

如需为应用激活默认的 Cloud Storage 存储分区,请执行以下操作:

  1. 在项目的 App Engine 设置页面中,点击“默认 Cloud Storage 存储分区”下的创建。 请注意此存储分区的名称:其格式为 <project-id>.appspot.com

  2. 如果所需的存储空间超过 5GB 限制,您可以通过为项目启用结算功能来增加存储空间,让其成为付费存储分区。您需要为超过 5GB 限制的存储空间付费。

如果要激活一个或多个付费存储分区,请按照创建存储分区下方的说明将其激活。

设置存储分区和对象权限

您可以在设置存储分区权限设置对象权限中找到有关允许应用的服务帐号或其他用户访问存储分区及其内容的信息。

下载客户端库

您可以通过 pipGit 等常用工具下载 Cloud Storage 的 App Engine 客户端库。或者,您也可以从 GitHub 手动下载库。请选择您的首选方法:

Git

如果您安装了 Git,可按如下方式克隆 App Engine 的 Cloud Storage 客户端库的 GitHub 代码库:

git clone https://github.com/GoogleCloudPlatform/appengine-gcs-client.git

pip

如果您安装了 setuptools,可按如下方式使用 pip 下载并安装适用于 Cloud Storage 的 App Engine 客户端库:

pip install GoogleAppEngineCloudStorageClient -t <your_app_directory/lib>

手动下载

您可以从 GitHub 下载 ZIP 文件,其中包含适用于 Cloud Storage 的 App Engine 客户端库:

GitHub 上适用于 Cloud Storage 的 App Engine 客户端库

将库安装到您用于第三方库的目录中,例如 lib。如需了解详情,请参阅使用第三方库

将客户端库与开发应用服务器搭配使用

您可以将客户端库与开发服务器搭配使用。但由于没有 Cloud Storage 的本地模拟,因此所有读取和写入文件的请求必须通过互联网发送到实际的 Cloud Storage 存储分区。

如需将客户端库与开发应用服务器搭配使用,请执行以下操作:

  1. 激活 Cloud Storage 存储分区

  2. 使用 --default_gcs_bucket_name [BUCKET_NAME] 标志运行 dev_appserver.py,并将 [BUCKET_NAME] 替换为正在使用的 Cloud Storage 存储分区的名称。

    此标志可控制在应用调用 file.DefaultBucketName(ctx) 时返回的存储分区。

价格、配额和限制

通过 App Engine 的客户端库调用 Cloud Storage 不会产生任何带宽费用。不过,此操作会产生操作费用。 此外,由于该客户端库使用 URL Fetch 服务与 Cloud Storage 进行交互,因此这些调用将计入 URL Fetch 配额

请注意,Google Cloud Storage 是付费服务;您需要按照 Cloud Storage 价格表支付费用。

访问 Cloud Storage 的其他方式

除了客户端库,您还可使用以下方式:

  • Google Cloud Console 中的 Cloud Storage Browser,可用于快速上传对象。
  • gsutil,它是一款命令行工具,用于处理 Cloud Storage 中存储的文件。

后续步骤