Skip to content

DNS・ドメイン設定 ​

UZU プロジェクトで使用しているドメインの管理方法と、新しいサブドメインを追加する手順を説明します。

ドメイン管理の概要 ​

DNS レコードはすべて Cloudflare で管理する (各ドメインのネームサーバーは *.ns.cloudflare.com)。 レジストラ (ドメインの登録先) は Cloudflare に移管済みのものと Squarespace に残っているものが混在するが、 レコードの編集はレジストラに関係なく Cloudflare のダッシュボードで行う。

ドメイン用途DNS レコードの編集先
uzu-app.comユーザー向けサービス(Web・Studio・Room・Store 等)Cloudflare DNS
uzu.oneバックエンド・内部サービス(API・gRPC・監視等)Cloudflare DNS
mdms.jpマダミス.jp(マーダーミステリー総合情報サイト)Cloudflare DNS
マダミス.jpmdms.jp へのリダイレクトCloudflare DNS
sally-inc.jp会社コーポレートサイトCloudflare DNS
uzu-asset.comCloudflare Workers(ゲームコンテンツ配信等)Cloudflare DNS

サブドメイン一覧 ​

uzu-app.com(ユーザー向け) ​

サブドメインは {env}.{service}.uzu-app.com の命名規則に従います。本番環境では {env}. プレフィックスが省略されます。

サブドメイン環境用途
www.uzu-app.comprdマーケティング Web サイト
studio.uzu-app.comprdシナリオ作成ツール(Studio)
dev.studio.uzu-app.comdevStudio 開発環境
stg.studio.uzu-app.comstgStudio ステージング環境
editor.studio.uzu-app.comprdシナリオエディター(リアルタイム共同編集)
dev.editor.studio.uzu-app.comdevエディター開発環境
stg.editor.studio.uzu-app.comstgエディターステージング環境
docs.studio.uzu-app.comprdStudio ドキュメント
room.uzu-app.comprdルーム予約・コード入力
dev.room.uzu-app.comdevルーム開発環境
stg.room.uzu-app.comstgルームステージング環境
store.uzu-app.comprdブラウザコインストア (GKE Ingress)
dev.store.uzu-app.comdevコインストア開発環境
stg.store.uzu-app.comstgコインストアステージング環境

uzu.one(バックエンド・内部サービス) ​

サブドメインは {env}.{service}.backend.app.uzu.one の命名規則に従います。

サブドメイン環境用途
prd.graph.backend.app.uzu.oneprdGraphQL API
stg.graph.backend.app.uzu.onestgGraphQL API(ステージング)
dev.graph.backend.app.uzu.onedevGraphQL API(開発)
prd.grpc.backend.app.uzu.oneprdgRPC サービス
stg.grpc.backend.app.uzu.onestggRPC サービス(ステージング)
dev.grpc.backend.app.uzu.onedevgRPC サービス(開発)
prd.asynqmon.backend.app.uzu.oneprd非同期タスクキュー監視
stg.asynqmon.backend.app.uzu.onestg非同期タスクキュー監視(ステージング)
dev.asynqmon.backend.app.uzu.onedev非同期タスクキュー監視(開発)
prd.v2.studio.uzu.oneprdStudio リアルタイム WebSocket
stg.v2.studio.uzu.onestgStudio WebSocket(ステージング)
dev.v2.studio.uzu.onedevStudio WebSocket(開発)
translator.uzu.oneprdUZU Translator SPA (Cloudflare Workers)
api.translator.uzu.oneprdUZU Translator API (Cloudflare Workers)

uzu-asset.com(Cloudflare Workers) ​

Cloudflare Workers のカスタムドメインとして使用。

サブドメイン環境用途
*.dev.uzu-code-content.uzu-asset.comdevゲームコンテンツ配信(Scenario Content Server)
*.stg.uzu-code-content.uzu-asset.comstgゲームコンテンツ配信(ステージング)
*.prd.uzu-code-content.uzu-asset.comprdゲームコンテンツ配信(本番)

その他のドメイン ​

ドメイン用途
mdms.jpマダミス.jp(マーダーミステリー総合情報・予約サイト)
マダミス.jpmdms.jp へのリダイレクト
sally-inc.jpSally 株式会社コーポレートサイト

新しいサブドメインの追加手順 ​

共通手順(Cloudflare) ​

  1. Cloudflare ダッシュボード で対象ドメインを開く
  2. DNS → Records を開く
  3. Add record でレコードを追加して Save
  4. DNS 反映まで数分待つ (Cloudflare は通常すぐ反映される)

A レコードの追加(Static IP を使う場合) ​

設定項目値
TypeA
Nameサブドメイン名(例: dev.store)
IPv4 addressGCP で発行した Static IP アドレス
Proxy statusDNS only (下記参照)

GKE Ingress に向けるときは DNS only にする

GKE の ManagedCertificate は HTTP-01 challenge で証明書を発行する。Proxied (orange-cloud ON) にすると challenge が Cloudflare edge で吸収されて証明書が発行できず、FailedNotVisible のまま止まる。 GKE Ingress / GCLB に向ける A レコードは必ず DNS only にする (auth / uzutokyo / store がこの構成)。

CNAME レコードの追加(他サービスを指す場合) ​

設定項目値
TypeCNAME
Nameサブドメイン名(例: docs.studio)
Target指し先のドメイン(例: ghs.googlehosted.com)
Proxy status指し先のサービスに合わせる (GCP 系は DNS only)

TIP

Cloudflare Workers のカスタムドメインを追加する場合は、wrangler.toml の routes に設定を追加すれば Cloudflare が自動的に DNS レコードを作成します。

GCP で Static IP を発行する場合 ​

サブドメインを GCP 上のリソースに向ける場合は、先に Static IP を発行します。

  1. VPC ネットワーク > IP アドレス を開く
  2. 対象のプロジェクトを選択(例: uzu-dev, uzu-stg, uzu-prd)
  3. 外部静的アドレスを予約 をクリック
  4. 名前・リージョンを設定して予約
  5. 発行された IP アドレスを DNS レコードの Data に設定

確認方法 ​

DNS レコードが正しく反映されたか確認するには:

bash
# A レコードの確認
dig dev.auth.uzu-app.com

# CNAME レコードの確認
dig docs.studio.uzu-app.com CNAME

# 簡易確認(IP のみ)
nslookup dev.auth.uzu-app.com

注意事項 ​

  • Cloudflare のアカウント: DNS を編集する権限がない場合は CTO に招待を依頼してください(メールアドレスを伝える)
  • SSL 証明書: GKE (Kubernetes) 上のサービスは、Ingress の managed-certificates で自動的に SSL 証明書が発行されます。新しいサブドメインを追加した場合、対応する ManagedCertificate リソースの作成が必要な場合があります
  • CORS 設定: 新しいサブドメインを追加した場合、バックエンドの CORS allowlist(backend/internal/servers/graph/main.go)に追加が必要な場合があります