Setting Up Google Cloud Storage

You can use a Cloud Storage bucket to store and serve files, such as movies or images or other static content. This document describes how to set up your environment to use the Google Cloud Storage client library.

For more information about Cloud Storage, see the Cloud Storage documentation.

Setting up your project

Follow the instructions in "Hello, World!" for Python on App Engine to set up your environment and project, and to understand how Python apps are structured in App Engine. Write down and save your project ID for use with your application.

Activating a Cloud Storage bucket

To use Cloud Storage, you'll need to activate at least one bucket. You might want to use the default bucket which provides the first 5GB of storage for free. You can always activate and use another Cloud Storage bucket if you want, but only the default bucket includes the first 5GB of storage for free. The default bucket also includes a free quota for Cloud Storage I/O operations. See Pricing, quotas, and limits for more details.

To activate the default Cloud Storage bucket for your app:

  1. Click Create under Default Cloud Storage Bucket in the App Engine settings page for your project. Notice the name of this bucket: it is in the form <project-id>.appspot.com.

  2. If you need more storage than the 5GB limit, you can increase this by enabling billing for your project, making this a paid bucket. You will be charged for storage over the 5GB limit.

If you want to activate one or more paid buckets, follow the instructions under Creating a bucket to activate them.

Setting bucket and object permissions

By default, when you create a bucket for your project, your app has all the permissions required to read and write to it.

If you want to set permissions to allow other users to access the bucket and its contents, see Setting bucket permissions and Setting object permissions.

Downloading the client library

You can download the Google Cloud Storage client library using popular tools like pip or Git. Alternatively, you can download the library manually from GitHub. Choose your preferred method:

Git

If you have Git installed, you can clone the Google Cloud Storage client library's GitHub repository as follows:

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

pip

If you have setuptools installed, you can use pip to download and install the Google Cloud Storage client library as follows:

pip install GoogleAppEngineCloudStorageClient -t <your_app_directory/lib>

Manual download

You can download a ZIP file containing the Google Cloud Storage client library from GitHub:

Google Cloud Storage client library on GitHub

Using the client library with the development app server

You can use the client library with the development server.

Pricing, quotas, and limits

There are no bandwidth charges associated with making Google Cloud Storage client library calls to Cloud Storage. However, there are operations charges. In addition, the calls count against your URL fetch quota as the library uses the URL Fetch service to interact with Cloud Storage.

Notice that Google Cloud Storage is a pay-to-use service; you will be charged according to the Cloud Storage price sheet.

Alternative ways to access Cloud Storage

Instead of using the client library, you could use the following:

  • Cloud Storage REST API. This could be a good choice if you need a specific feature not provided in the client library. However, this isn't compatible with the development server.
  • Cloud Storage Browser in the Google Cloud Platform Console. Useful for uploading objects quickly.
  • gsutil. A command line tool.

Send feedback about...

App Engine standard environment for Python