Repolode
google

google/go-cloud

主要なクラウドで同じコードベースを動かせる、Blobストレージ、Pub/Sub、データベース、シークレット向けのGoライブラリ。

スター
9,920
フォーク
863
未解決の Issue
2
最終コミット
4 日前

これは何?

Go Cloud Development Kit(Go CDK)を使うと、Go開発者はBlobストレージ、データベース、メッセージングなどの一般的なサービスを、安定したGoらしいインターフェースを通じて利用するクラウドアプリケーションを作れます。アプリケーションコードは単一のAPIを呼び出し、各クラウド固有のドライバーが詳細を処理するため、同じプログラムを異なるクラウドプロバイダーにデプロイできます。

このキットは、Blobストレージ、Pub/Sub、実行時に変更可能な変数、ドキュメントストレージ、シークレット、MySQL/PostgreSQL接続に加え、リクエストログ、トレーシング、ヘルスチェック用のサーバーユーティリティを備えています。設計はGoのdatabase/sqlパッケージをモデルにしています。また、Wireコードジェネレーターと組み合わせることで、アプリケーションが使用するクラウドSDKだけをインポートする、読みやすいコードを生成できます。

APIはalphaとしてドキュメント化されています。メンテナーは新しいドライバーを追加するより、既存のドライバーをこのリポジトリに維持する方針で、新しいプロバイダーについてはコントリビューターに別のリポジトリを案内しています。

主な機能

  • 01S3、Google Cloud Storageなどのバックエンドで利用できる、ポータブルなBlobストレージAPI。
  • 02Pub/Sub、実行時変数、ドキュメントストレージ、シークレットを、それぞれ単一のインターフェースで扱うAPI。
  • 03MariaDBを含むMySQLとPostgreSQLの接続をサポート。
  • 04サーバー向けのリクエストログ、トレーシング、ヘルスチェックを標準搭載。
  • 05Wireとの併用を想定して設計されており、使用するクラウドSDKだけをコンパイル対象にできる。

ユースケース

  • ストレージコードを書き換えずにAWS、GCP、Azureで動かせるGoサービスの構築。
  • オブジェクトストレージを抽象化し、ローカルテストと本番環境で異なるバックエンドを使う。
  • マルチクラウドのGoアプリケーションに、ポータブルなシークレット管理やPub/Sub処理を追加する。

クイックスタート

  1. 1

    Go プロジェクトに Go CDK モジュールをインストールする

    go get gocloud.dev
  2. 2

    プロジェクトのウェブサイトでドキュメントとチュートリアルを読む

使う前に知っておきたいこと

  • README によると、API はまだアルファ版です。
  • このプロジェクトは既存のドライバーの保守を優先しており、メインリポジトリで新しいドライバーが受け入れられる可能性は低いです。
  • 必要なクラウド固有のドライバーは、別の外部リポジトリにある場合があります。

トピック

よくある質問

go-cloud とは?
主要なクラウドで同じコードベースを動かせる、Blobストレージ、Pub/Sub、データベース、シークレット向けのGoライブラリ。 Go Cloud Development Kit(Go CDK)を使うと、Go開発者はBlobストレージ、データベース、メッセージングなどの一般的なサービスを、安定したGoらしいインターフェースを通じて利用するクラウドアプリケーションを作れます。アプリケーションコードは単一のAPIを呼び出し、各クラウド固有のドライバーが詳細を処理するため、同じプログラムを異なるクラウドプロバイダーにデプロイできます。
go-cloud は無料で使えますか?ライセンスは?
go-cloud は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
go-cloud は今もメンテナンスされていますか?
活発にメンテナンス中。go-cloud の最終コミットは 2026年11月2日 です。
go-cloud は何に使えますか?
ストレージコードを書き換えずにAWS、GCP、Azureで動かせるGoサービスの構築。 オブジェクトストレージを抽象化し、ローカルテストと本番環境で異なるバックエンドを使う。 マルチクラウドのGoアプリケーションに、ポータブルなシークレット管理やPub/Sub処理を追加する。
go-cloud のインストール方法は?
Go プロジェクトに Go CDK モジュールをインストールする: go get gocloud.dev プロジェクトのウェブサイトでドキュメントとチュートリアルを読む
go-cloud はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/google/go-cloud

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト

クラウドやSaaSのインフラメタデータをデータウェアハウスに同期し、SQLでのクエリ、資産インベントリ、セキュリティ分析を可能にするCLIとデータパイプライン。

データ・分析#cloud-asset-inventory#cspm#etl
6552+5 今週567GoMPL-2.0活発にメンテナンス更新 15 時間前