クイックスタート
Authrimインスタンスを数分で起動しましょう。
開始前に、以下を確認してください:
1. リポジトリをクローン
Section titled “1. リポジトリをクローン”git clone https://github.com/sgrastar/authrim.gitcd authrim2. 依存関係をインストール
Section titled “2. 依存関係をインストール”pnpm install3. Cloudflareにログイン
Section titled “3. Cloudflareにログイン”wrangler login4. セットアップウィザードを実行
Section titled “4. セットアップウィザードを実行”@authrim/setup CLIツールを使用して環境を自動設定します:
npx @authrim/setup --cliまたは、対話式Web UIを起動:
npx @authrim/setupセットアップウィザードは以下を行います:
- 暗号鍵の生成(JWT署名用のRSA)
- 環境変数を含む
.dev.varsの作成 - ローカル開発用の
wrangler.tomlの生成 - キャッシュ、設定、テナントランタイムスナップショット用KV名前空間のセットアップ
- デプロイ単位のD1データベース(
DB、DB_PII、DB_ADMIN)の作成 - runtime profilesのseedとcore、PII、admin migrationの適用
@authrim/ar-lib-coreからDurable Objectsをデプロイ
セットアップオプション
Section titled “セットアップオプション”| オプション | 説明 |
|---|---|
--cli | CLIモードを使用(Web UIなし) |
--env <env> | 環境を指定(dev、staging、prodなど) |
--lang ja | 日本語を使用 |
5. 開発サーバーを起動
Section titled “5. 開発サーバーを起動”pnpm run devすべてのワーカーが開発モードで起動します。エンドポイントはhttp://localhost:8787でアクセスできます。
6. セットアップを確認
Section titled “6. セットアップを確認”ディスカバリーエンドポイントをテスト:
curl http://localhost:8787/.well-known/openid-configuration | jq以下のようなOpenID Connectディスカバリードキュメントが表示されるはずです:
{ "issuer": "http://localhost:8787", "authorization_endpoint": "http://localhost:8787/authorize", "token_endpoint": "http://localhost:8787/token", "userinfo_endpoint": "http://localhost:8787/userinfo", "jwks_uri": "http://localhost:8787/.well-known/jwks.json"}JWKSエンドポイントをテスト:
curl http://localhost:8787/.well-known/jwks.json | jqクイックテスト:認可フロー
Section titled “クイックテスト:認可フロー”ブラウザで以下のURLにアクセスして認可フローをテスト:
http://localhost:8787/authorize?response_type=code&client_id=test-client&redirect_uri=http://localhost:3000/callback&scope=openid&state=random-stateセットアップフローの概要
Section titled “セットアップフローの概要”git clone + pnpm install ↓wrangler login ↓npx @authrim/setup --cli ← すべてを自動設定 ↓pnpm run devレガシーセットアップ(手動)
Section titled “レガシーセットアップ(手動)”詳細なカスタマイズやトラブルシューティングには、個別のスクリプトを使用できます。これはソースリポジトリ向けのワークフローであり、通常はsetup CLIの利用を推奨します:
# 鍵を生成./scripts/setup-keys.sh
# ローカル環境を設定./scripts/setup-local-vars.sh./scripts/setup-local-wrangler.sh
# クラウドリソースをセットアップ./scripts/setup-kv.sh --env=dev./scripts/setup-d1.sh --env=dev./scripts/setup-durable-objects.sh
# オプション:メール設定(OTP認証用)./scripts/setup-resend.sh --env=localtenant-D1デプロイでは、生成されるテナントDB slotをsetup CLIで管理します:
npx @authrim/setup tenant-db-pool-status --env prodnpx @authrim/setup tenant-db-pool-expand --env prod --add-slots 10npx @authrim/setup tenant-db-migrate-all --env prod