GCS の画像を Cloudflare Worker で中継してエッジにキャッシュする(バケット名を変えずに独自ドメインで配る)
GCS の公開バケットにある画像を、Cloudflare Worker で中継して独自ドメインから配るようにしました。CNAME が使えなかった理由、40行ほどの Worker の中身、GCS のエラー本文を出さない処理、Vary: Origin を付け忘れて「画像を保存」が失敗した件をまとめます。
Topic
個人開発で使っている GCP(Cloud Run・Compute Engine・Artifact Registry・Cloud Storage)の記事です。請求の見直しシリーズでは、確約利用割引の二重購入、VM の通信料、GPU の予算キルスイッチなどを実際の金額つきで書いています。
7件(新しい順)
GCS の公開バケットにある画像を、Cloudflare Worker で中継して独自ドメインから配るようにしました。CNAME が使えなかった理由、40行ほどの Worker の中身、GCS のエラー本文を出さない処理、Vary: Origin を付け忘れて「画像を保存」が失敗した件をまとめます。
Cloud Run で動かす GPU ワーカーのコンテナイメージが1個11.5GB。月8回ビルドしたら、30日経過で削除するポリシーを入れていても Artifact Registry が86GBに戻りました。保持件数ベースのポリシーへの見直しと、Cloud Build のソースバケットの片付けをまとめます。
個人開発で使っている GCP の全プロジェクトを、Claude Code と一緒に横断して見直しました。gcloud での調査、ストレージの掃除、通信料の削減、そして CUD の二重契約という失敗まで。AI に任せられたこと・人間がやる必要があったことを整理します。
画像生成アプリの GPU 費用が予算を超えないよう、予算アラート → Pub/Sub → Cloud Functions で GPU ワーカーだけを止める仕組みを作りました。Cloud Run の設定を書き換える方式は効かず、GCS のフラグファイル方式に変えた経緯と、段階導入・90%しきい値の理由をまとめます。
GCP の費用を見直したとき、候補に挙がったものの見送った施策と、その理由をまとめます。ダウングレード、日本リージョンへの移行、Nearline 化などは、条件次第で逆効果になりました。確認して問題なしだった項目のチェックリストも載せます。
コスト削減のつもりで GCP の1年 CUD を契約したら、請求アカウント単位の3年 Flexible CUD がすでにあり二重契約に。しかも e2-medium に対して確約量が過大でした。見落とした原因、取り消しまでのサポート対応、CUD を買う前の確認手順をまとめます。
Cloudflare の裏で WordPress を動かす GCP VM の外向き通信が月約70GB。通信料は Networking ではなく Compute Engine 側に計上されていました。内訳を調べたら4割が圧縮されていない404応答だったので、PHP で gzip 化し、Standard ティアに切り替えた話です。