🐡

Dockerを使わずにCloud RunとCloud Buildを使う

2024/01/18に公開

Cloud Runを使う理由

現在開発しているプロジェクトのホスティングの候補がVercelがCloud Runでした。開発メンバーが三人いるのでvercelだと20ドル×3人で月60ドルですが、Cloud Runならかかっても月30ドルくらいだと試算したのでコスト面からCloud Runを採用しました。

Cloud RunとCloud Buildとは?

Cloud RunはGoogleが提供しているサーバーレスなコンテナ実行環境です。Next.jsに対応しているので今回採用しました。

Cloud BuildはソースコードをもとにGCP上でbuildしてくれるCI/CDサービスです。今回はCloud BuildでgithubのdevelopブランチのコードをbuildしてCloud Runに反映されるように設定します。

Buildpacks

https://cloud.google.com/blog/ja/products/containers-kubernetes/google-cloud-now-supports-buildpacks
Cloud Buildは従来DockerFileがあることが前提だったのですが、上記にあるようにコンテナ化をしていないアプリケーションであっても簡単にCloud Runの実行に必要なコンテナイメージを作成できます。今回はこれを使います。

Cloud Buildが自動で実行されるように設定

Cloud Runの「継続的デプロイを編集します」という部分で設定しましょう。

Discussion