Skip to content

Cloudflare でデプロイとプレビュー環境を設定する #3

Description

@tknkaa

Cloudflare (ut-code のアカウント ut.code();) で、デプロイとプレビューを設定する。デプロイは GitHub の CI ではなく、Cloudflare の Workers Builds が行う。手順と設定値は docs/deploy.md。

済み

残り

  • リマインドの cron が本番で動いていることを確認する (ダッシュボードの Triggers で実行の履歴を見る)
  • メールが届くことの確認 (Resend でリマインドメールを送信する #8 の Resend の設定が先)。それまで、本番のメールの送信は失敗して、デッドレターキュー (kanban-mail-dead-letter) に溜まる
  • 独自ドメインを使うか決める (使うなら、BETTER_AUTH_URL と APP_URL も変える)

メモ

  • Workers Builds の設定は、cf builds workers get <Worker のタグ> で、保存された値を直接確かめられる。ダッシュボードの表示と、実際の値が食い違っていたことがあった
  • ブランチの最初のビルドのときに、そのときの設定 (コマンド、トークン) が、そのブランチのプレビュー専用のトリガーに写される。あとから Worker の設定を変えても、既存のブランチには効かない
  • Worker Previews と cf は、どちらもベータ

Activity

  1. tknkaa commented on Oct 2, 2026

    @tknkaa
    CollaboratorAuthor

    #32 で、設定と手順を用意した。リポジトリでできる部分は済み、残りは Cloudflare のアカウントでの作業 (この issue は閉じない)。

    済み:

    • プレビュー用の環境 (env.preview): 別の Worker、別の D1 / R2 / キュー
    • pnpm check:deploy (設定が正しく読めることの確認。CI でも実行)
    • docs/deploy.md: リソースの作り方、シークレット、Workers Builds の設定値

    残り (手順は docs/deploy.md):

    • D1 / R2 / キューを作り、database_id を wrangler.jsonc に書く (本番とプレビュー)
    • BETTER_AUTH_SECRET と BETTER_AUTH_URL を設定する
    • ダッシュボードで Workers Builds をつなぎ、ビルドとデプロイのコマンドを設定する (todo-web、todo-reminder-worker)
    • main へのマージで本番にデプロイされ、マイグレーションが適用されることを確認する
    • PR でプレビューのバージョンができ、本番のデータに触れないことを確認する
    • 本番で、WebSocket と Durable Objects、cron が動くことを確認する
  2. tknkaa commented on Oct 2, 2026

    @tknkaa
    CollaboratorAuthor

    本文を、いまの進み具合に合わせて書き直した。上のコメントにある「プレビュー用の別の Worker (env.preview)」の方式はやめて、Worker Previews に切り替えた (#40)。残りは、cron の動作の確認、メールの確認 (#8)、独自ドメインの判断。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions