このページでは、Cloud Storage バケットの作成方法について説明します。リクエストで指定されていない限り、バケットは US
マルチリージョンで作成され、デフォルトのストレージ クラスは Standard Storage になります。また、削除(復元可能)の保持期間は 7 日間になります。
必要なロール
Cloud Storage バケットを作成するために必要な権限を取得するには、プロジェクトに対するストレージ管理者(roles/storage.admin
)IAM ロールを付与するよう管理者に依頼してください。
この事前定義ロールには、バケットの作成に必要な権限が含まれています。必要な権限を正確に確認するには、[必要な権限] セクションを開いてください。
必要な権限
storage.buckets.create
storage.buckets.enableObjectRetention
(バケットのオブジェクト保持構成を有効にする場合にのみ必要)storage.buckets.list
(Google Cloud コンソールでバケットを作成する場合にのみ必要)resourcemanager.projects.get
(Google Cloud コンソールでバケットを作成する場合にのみ必要)
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。どのロールがどの権限に関連付けられているかを確認するには、Cloud Storage に適用される IAM のロールをご覧ください。
プロジェクトにロールを付与する手順については、プロジェクトへのアクセス権を管理するをご覧ください。
バケットを新規作成する
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
- [+ 作成] をクリックします。
- [バケットの作成] ページでユーザーのバケット情報を入力します。次のステップに進むには、[続行] をクリックします。
- [バケットに名前を付ける] で、バケット名の要件を満たす名前を入力します。
- [データの保存場所の選択] で、バケットデータを永続的に保存するロケーション タイプとロケーションを選択します。
- [データのストレージ クラスを選択する] で、バケットのデフォルトのストレージ クラスを選択するか、バケットのデータの自動ストレージ クラス管理について Autoclass を選択します。
注: 右側の [毎月の費用の見積もり] パネルでは、選択したストレージ クラスとロケーション、予想されるデータサイズとオペレーションに基づいてバケットの毎月のコストを見積もります。
- [オブジェクトへのアクセスを制御する方法を選択する] で、バケットで公開アクセスの防止を適用するかどうかを選択して、バケットのオブジェクトのアクセス制御モデルを選択します。
注: プロジェクトの組織のポリシーによって公開アクセスの防止がすでに適用されている場合、[公開アクセスの防止] の切り替えはロックされています。
- [オブジェクト データを保護する方法を選択] で、必要に応じて [保護ツール] を構成し、データ暗号化メソッドを選択します。
- [作成] をクリックします。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
開発環境で、
gcloud storage buckets create
コマンドを実行します。gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION
ここで
リクエストが成功すると、コマンドから次のメッセージが返されます。
Creating gs://BUCKET_NAME/...
次のフラグを設定すると、バケットの作成をより細かくコントロールできます。
--project
: バケットが関連付けられるプロジェクト ID またはプロジェクト番号を指定します。例:my-project
--default-storage-class
: バケットのデフォルトのストレージ クラスを指定します。例:STANDARD
--soft-delete-duration
: バケットの削除(復元可能)の保持期間を指定します。例:2w1d
--uniform-bucket-level-access
: バケットの均一なバケットレベルのアクセスを有効にします。
gcloud バケットの作成オプションの完全なリストについては、
buckets create
オプションをご覧ください。例:
gcloud storage buckets create gs://BUCKET_NAME --project=PROJECT_ID --default-storage-class=STORAGE_CLASS --location=BUCKET_LOCATION --uniform-bucket-level-access
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Terraform
REST API
JSON API
Authorization
ヘッダーのアクセス トークンを生成するには、gcloud CLI のインストールと初期化を行います。OAuth 2.0 Playground を使用してアクセス トークンを作成し、
Authorization
ヘッダーに含めることもできます。- バケットの設定を含む JSON ファイルを作成します。この設定には、バケットの
name
を含める必要があります。設定の一覧については、Buckets:Insert のドキュメントをご覧ください。一般的な設定は次のとおりです。 BUCKET_NAME
は、バケットに付ける名前で、命名要件の対象となります。例:my-bucket
BUCKET_LOCATION
は、バケットのオブジェクト データを保存するロケーションです。例:US-EAST1
STORAGE_CLASS
はバケットのデフォルトのストレージ クラスです。例:STANDARD
cURL
を使用して JSON API を呼び出します。curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b?project=PROJECT_IDENTIFIER"
ここで
JSON_FILE_NAME
は手順 2 で作成した JSON ファイルの名前です。PROJECT_IDENTIFIER
は、バケットが関連付けられているプロジェクトの ID または番号です。例:my-project
{ "name": "BUCKET_NAME", "location": "BUCKET_LOCATION", "storageClass": "STORAGE_CLASS", "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true }, } }
ここで
XML API
Authorization
ヘッダーのアクセス トークンを生成するには、gcloud CLI のインストールと初期化を行います。OAuth 2.0 Playground を使用してアクセス トークンを作成し、
Authorization
ヘッダーに含めることもできます。- バケットの設定を含む XML ファイルを作成します。設定の全一覧については、XML: バケットを作成するのドキュメントをご覧ください。一般的な設定は次のとおりです。
BUCKET_LOCATION
は、バケットのオブジェクト データを保存するロケーションです。例:US-EAST1
STORAGE_CLASS
はバケットのデフォルトのストレージ クラスです。例:STANDARD
cURL
を使用して、XML API を呼び出します。curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-project-id: PROJECT_ID" \ "https://storage.googleapis.com/BUCKET_NAME"
ここで
XML_FILE_NAME
は手順 2 で作成した XML ファイルの名前です。PROJECT_ID
は、バケットが関連付けられるプロジェクトの ID です。例:my-project
BUCKET_NAME
は、バケットに付ける名前で、命名要件の対象となります。例:my-bucket
<CreateBucketConfiguration> <LocationConstraint>BUCKET_LOCATION</LocationConstraint> <StorageClass>STORAGE_CLASS</StorageClass> </CreateBucketConfiguration>
ここで
次のステップ
- プロジェクト内のバケットを一覧表示する。
- バケットのメタデータに関する情報を取得する。
- バケットのストレージ レイアウトに関する情報を取得する
- バケットを移動または名前を変更する。
- バケットを削除する。
- バケットにオブジェクトをアップロードする。
- Kubernetes Config Connector を使用して、バケットの作成と構成を管理する。
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Cloud Storage のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
Cloud Storage を無料で試す