Cloud Runにデプロイしたサービスを一時期停止する方法
オリジナルのドメイン名を取得してサービスを公開していると、やたらめったら(おもにWordPressを狙って)どっからかアクセスがあるのがイヤだ。
もう二度と使わないのならば、サービス自体を削除すればいいけれど、期間限定の利用を目的にその期間以外は使わない(使いたくない)サービスの場合、また使いたくなったときにすぐに利用開始できるようにするための方法がないものかと調べてみた内容を自分自身の忘備録として書きますね。
生成AIに聞いたら「手動スケーリングにして、その値を0にすればいいよ」と出てくるけれど、GUIしか扱えない初心者としてそれはどこで設定するのかまでちゃんと回答してくれない。ってか、あやふやな内容の回答しか返ってこなかった。なので、色々と探して見つけたことを記録として残して、自分自身含めて忘れたときに役に立てばと思います。
やることは「インスタンス数を0にする」
Cloud Runのコンソールから目的サービスを選んで、サービス名と並んで表示される「スケーリング」の鉛筆マークをクリックし、そこで「自動スケーリング」から「手動スケーリング」にし、最大数を0にすればよいです。ここが自動スケーリングとなっているとインスタンス数が0であってもアクセスがあればインスタンスが起動して課金が始まります。
赤枠の鉛筆マークをクリックすると自動スケーリングから手動スケーリングへ変更できます。
変更後、対象のURLまたはドメインにアクセスすると503エラーが返ってきます。
変更すれば直ぐに反映されますので、また利用する場合には自動スケーリングの設定にすれば元通り動き始めました。
最近はフロントをgithub pagesで公開して、そこのjavascriptからCloud Runに立ち上げたAPIを叩きデータベースサービスを利用したり、もう一個先のAPIを叩いたりといろいろやってみたらおもしろいし、Cloud Runとgithubを連携させるとデプロイもめっちゃ簡単なので、皆さんもやってみると良いですよ。


