一見すると、コンテナ化とサーバーレス サービスは過度に複雑に見えるかもしれません。 Cloud Run を使い始めたばかりの場合は、Cloud Code の Cloud Run サンプルの更新されたリストを確認してください。 例は、Java、NodeJS、Python、Go、.NET で利用できます。 これらに基づいて、すべての推奨事項を考慮して独自のコードの作成をすぐに開始できます。
すべての例には Dockerfile が含まれているため、コンテナーの構成を理解するのに時間を無駄にする必要はありません。 既存のサービスを Cloud Run に移行する場合は、これまで Dockerfile を使用したことがないかもしれません。 大丈夫です! Cloud Code サービスはサポートされています Google Cloud Buildpack オブジェクトを使用すると、サービスをコード内で直接コンテナ化できます。 Dockerfile は必要ありません。 Cloud Code には、サービスを Cloud Run にデプロイするために必要なものがすべて含まれています。
ローカル環境での Cloud Run サービスの開発とデバッグ
サービスを Google Cloud にデプロイする前に、自分のコンピュータでサービスを試して動作を確認し、必要な変更を加え、エラーをデバッグすることが必要になる場合があります。 開発中は、代表的な Cloud Run 環境への変更をテストするために、Cloud Run サービスを継続的に収集してクラウドにデプロイする必要があります。 デバッガーを接続してコードをローカルでデバッグできますが、これはコンテナー全体のレベルでは行われないため、ツールをローカルにインストールする必要があります。 Docker を使用してコンテナーをローカルで実行することは可能ですが、それに必要なコマンドが長すぎて、実稼働環境の詳細を反映していません。
Cloud Code には、Cloud Run サービスをローカルで開発およびデバッグできる Cloud Run エミュレータが含まれています。 によると 探査DevOps Research and Assessment (DORA) が実施した調査によると、高いソフトウェア配信効率を実証したチームは、効率の悪いチームに比べて、変更失敗の頻度が 7 分の XNUMX でした。 コードをローカルで迅速に反復し、代表的な環境でデバッグできるため、継続的統合中や、さらに悪いことに本番環境ではなく、開発の初期段階でバグを迅速に見つけることができます。
Cloud Run エミュレータでコードを実行するときに、表示モードを有効にすることができます。 ファイルを保存するたびに、継続的な開発のためにサービスがエミュレータに再デプロイされます。
Cloud Run エミュレータの最初の起動:
Cloud Code を使用した Cloud Run サービスのデバッグは、通常の開発環境の場合と同じです。 VS Code で「Cloud Run エミュレータでデバッグ」コマンドを実行し (または、「Cloud Run: ローカルで実行」構成を選択し、IntelliJ 環境で「デバッグ」コマンドを実行)、コードのブレークポイントを設定するだけです。 コンテナーでブレークポイントがアクティブになると、コマンドを切り替えたり、変数プロパティにカーソルを合わせたり、コンテナーからのログを確認したりできます。
VS Code の Cloud Code と IntelliJ アイデアを使用した Cloud Run サービスのデバッグ:
Cloud Run でのサービスのデプロイ
Cloud Run サービスのコードに加えたすべての変更をローカルでテストしたら、あとはコンテナを作成して Cloud Run にデプロイするだけです。
VS Code の Cloud Code を使用すると、ワンクリックでバージョンとサービスの履歴を表示できます。 この機能は Cloud Console から開発環境に移動されたため、切り替え続ける必要はありません。 表示ページには、Cloud Run Explorer で選択したバージョンとサービスに関連するログが正確に表示されます。
Cloud Run Explorer では、プロジェクト内のすべてのマネージド Cloud Run サービスと Anthos 用 Cloud Run サービスに関する情報をすばやく検索して表示することもできます。 ここでは、トラフィックの何パーセントがリダイレクトされているか、およびどのくらいの CPU リソースが割り当てられているかを簡単に確認できます。