カスタムドメイン + httpsでCloud Storageのオブジェクトにアクセスできるようにする

公開日時

カスタムドメイン形式( assets.example.com )でCloud Storageのバケットを作成し、DNSに↓のようにCNAMEを登録するとカスタムドメインでCloud Storageのオブジェクトにアクセスできるようになる。

CNAME assets c.storage.googleapis.com

ただし、そのままだとhttpsには対応していないため、GCPで完結させる場合はCloud Load Balancingを前段に配置する必要がある。

今回はコストを抑えるためCloud Load Balancingは使わず、Cloudflareを用いてhttps対応を行った。

前提としてネームサーバーはCloudflareに変更済みとする。

DNS設定

  • CNAMEの登録
cloudflare storage1

ページルール設定

  • 「SSL/TLS」メニューを表示し、現在の暗号化モードを確認
    • デフォルトだと「フル」になっている
cloudflare storage3
  • 「ルール」メニューを表示し、 assets.example.com へのアクセスのみ「フレキシブル」に変更するルールを追加する
    • URLには *assets.example.com/* を設定
    • SSL => フレキシブル に設定
cloudflare storage2

これでカスタムドメイン + httpsでCloud Storageのオブジェクトにアクセスできるようになった。

参考


Related #gcp

Cloud FunctionsのNode.jsバージョンを更新する

package.jsonとcloudbuild.yamlを更新

Cloud BuildでFirebase Hostingのデプロイを行う

リポジトリへのpush以外をトリガーにしたい場合に使用

Firebase HostingのデプロイをWebhook(API)経由で行う

デプロイボタンが作れるようになった

CloudRunでnode.jsを動かす

リポジトリにpushしたらCloudRun上に自動デプロイ

IPv6 IPoE環境で自宅のRaspberryPiにsshできるようにする

GCPにssh port forwardingすることで実現できた