AWS、Azure、GCPなどのクラウド環境でセキュリティとコンプライアンスのチェックを実行できる、オープンソースのクラウドセキュリティプラットフォーム兼CLI。
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
Go プロジェクトに Go CDK モジュールをインストールする
go get gocloud.dev - 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 の数値は毎日更新されます。
関連プロジェクト
Terraform、Terragrunt、CloudFormation、AWS CDKのクラウドコストを、インフラ変更のデプロイ前に見積もれるオープンソースツール。
アプリケーションコードからインフラを推論し、AWS、GCP、Azureにデプロイできる多言語対応のクラウドバックエンドフレームワーク。
汎用プログラミング言語でクラウドリソースを定義・デプロイできる、Infrastructure as Code の CLI とエンジンです。
クラウドやSaaSのインフラメタデータをデータウェアハウスに同期し、SQLでのクエリ、資産インベントリ、セキュリティ分析を可能にするCLIとデータパイプライン。
AIへのプロンプト、JSONグラフ、Terraformコードから、AWS・Azure・GCPの公式クラウドアイコンを使ったアーキテクチャ図を生成します。