Google Cloud の利用
Dart サーバーは、公式の Dart 用 Docker イメージ がパッケージ化された Docker イメージの助けを借りて、多くの Google Cloud 製品 を利用できます。Dart で HTTP サーバーを作成する方法については、HTTP サーバーの作成 ページを参照してください。
Dart コードから利用したい Firebase を含むその他の Google API については、Google API ページを参照してください。
推奨されるソリューション
#Dart を Cloud で実行するには、サーバーレスコンピューティング ソリューションの使用を推奨します。
Cloud Run
#Cloud Run の柔軟なコンテナ サポートと Dart の Docker イメージを組み合わせて、サーバーサイド Dart コードを実行できます。スケーラブルで高性能な API やイベント駆動型アプリケーションの作成は、開発者がインフラストラクチャを管理する手間を省く Cloud Run のサーバーレス プラットフォームの優れたユースケースです。
Cloud Run で実行されるように実装された Dart サーバーの例は、dart-lang/samples/ リポジトリにあります。
Cloud Run の使用方法の詳細については、その他の言語でのサービスの構築とデプロイのドキュメントを参照してください。
Functions Framework for Dart
#Functions Framework は、Web リクエストを処理するサーバーアプリケーションの代わりに Dart 関数を簡単に記述できる FaaS (Function as a Service) フレームワークです。このフレームワークを使用して、HTTP リクエストと CloudEvents を処理する関数を作成し、Google Cloud にデプロイできます。
Dart Functions Framework はコミュニティによってサポートされているプロジェクトです。
詳細については、README を参照してください。
その他のソリューション
#ニーズに応じて、次の Google Cloud コンピューティング プラットフォームで Dart を実行することも検討できます。
Compute Engine
#Compute Engine で Dart コードを実行するには、Compute Engine のコンテナ実行サポートと Dart の Docker イメージを組み合わせて使用します。
詳細については、ソフトウェアコンテナの使用に関する Compute Engine のドキュメントを参照してください。
Kubernetes
#Compute Engine インスタンスのクラスターで Dart を実行するには、Google Kubernetes Engine (GKE) を使用します。
詳細については、GKE の概要を参照してください。
App Engine
#App Engine の Dart サポートは不完全であり、App Engine フレキシブル環境が必要ですが、これはゼロインスタンスに自動スケーリングされません。そのため、新しいサーバーサイド Dart コードには Cloud Run を推奨します。App Engine を使用したい場合は、appengine パッケージの使用を検討してください。