🌱

Cloud Runでサービスを停止する

2021/05/20に公開

Cloud Runでは起動しているサービスを直接停止することができません。
サービスを削除することで停止することもできますが、もう一度起動したいときにデプロイからやりなおすことになるのでちょっと停止したいといった場合には少し面倒です。

Cloud Runのコンテナはアクセスがない場合、自動的に停止します。
https://cloud.google.com/blog/ja/products/serverless/lifecycle-container-cloud-run

そこでCloud Runの起動元の権限を削除してアクセスを禁止することによりサービスを停止させます。

Cloud Run 起動元の権限を削除

Cloud Runのページのサービス一覧から停止したいサービスにチェックをいれます。
停止したいサービスにチェック

ページ右側の情報パネルから"Cloud Run 起動元"をクリックします。
"Cloud Run 起動元"をクリック

"allUsers"または"allAuthenticatedUsers"の横にある数字をクリックします。
数字をクリック

停止したいサービスのチェックを外し、"更新"をクリックします。
停止したいサービスのチェックを外し、"更新"をクリック

"権限"から"Cloud Run 起動元"が削除され、選択したサービスへのアクセスが禁止されました。
"権限"から"Cloud Run 起動元"が削除

Cloud Run 起動元の権限を追加

再度サービスを開始する場合は"Cloud Run 起動元"の権限を追加します。

Cloud Runのページのサービス一覧から開始したいサービスにチェックを入れ、情報パネルから"メンバーの追加"をクリックし、"新しいメンバー"で"allUsers"または"allAuthenticatedUsers"を選択します。
"新しいメンバー"で"allUsers"または"allAuthenticatedUsers"を選択

"ロールを選択"をクリックします。
"ロールを選択"をクリック

"Cloud Run"をクリックし、"Cloud Run 起動元"をクリックして選択します。
"Cloud Run"をクリックし、"Cloud Run 起動元"をクリックして選択

"保存"をクリックします。
"保存"をクリック

"一般公開アクセスを許可"をクリックしてサービスを公開します。
"一般公開アクセスを許可"をクリックしてサービスを公開

参考

https://cloud.google.com/run/docs/managing/services?hl=ja#disable

Discussion