kamakiri domain

役割、DNSレコード、各サブコマンドを実行する順番は独自ドメインで説明しています。

kamakiri domain register

kamakiri domain register <domain> [--no-wait]
$ kamakiri domain register example.com

Publish this DNS record to prove ownership:
  TYPE  NAME                          VALUE
  TXT   _kamakiri-verify.example.com  kamakiri-verify=mfrggzdfmztwq2lknnwg23tp
  Add this value; keep any other `_kamakiri-verify` value already there.

  Add the TXT record above at your registrar, then come back.
  Safe to close any time (Ctrl-C). Re-run `kamakiri domain register example.com` or `kamakiri domain list` to resume.

✓ domain verified: example.com
Now run `kamakiri domain set example.com` to point a site at it.
$ kamakiri domain register example.com

所有権を証明するため、次のDNSレコードを公開してください:
  種別  名前                          宛先
  TXT   _kamakiri-verify.example.com  kamakiri-verify=mfrggzdfmztwq2lknnwg23tp
  この値を追加してください。既にある他の `_kamakiri-verify` の値はそのまま残してください。

  上記のTXTレコードをレジストラで追加したら、戻ってきてください。
  いつでも閉じて構いません (Ctrl-C)。`kamakiri domain register example.com` または `kamakiri domain list` を再実行すると再開できます。

✓ ドメインを確認しました: example.com
次に `kamakiri domain set example.com` を実行してサイトを割り当ててください。

登録はアカウントに属するので、サイトの紐付けは不要で、どのディレクトリからでも実行できます。

再実行しても問題ありません。確認待ちの名前なら確認をやり直し、公開済みの値はそのまま有効です。ただし、登録から72時間たっても確認されない登録は削除され、そのあとに実行すると新しい値が発行されます。確認済みの登録ですでにカバーされている名前なら公開するものはなく、✓ example.com は登録済みです。 または ✓ www.example.com は確認済みのドメイン登録 example.com に含まれています。 と表示されます。

kamakiri domain unregister

kamakiri domain unregister <domain>
$ kamakiri domain unregister example.com
✓ Unregistered example.com.
$ kamakiri domain unregister example.com
✓ example.com のドメイン登録を解除しました。

register と同じく、サイトの紐付けは不要です。登録していない名前の解除は成功として扱われます。その登録の配下のホスト名をご自身のサイトがまだ使っている間は、エラー: example.com is in use by one of your sites; remove it from that site first. と表示されて拒否されます。unset か remove でホスト名を外してから、もう一度実行してください。

kamakiri domain set

kamakiri domain set <domain> [--no-wait]
$ kamakiri domain set example.com
✓ Canonical domain set: example.com

Configure your DNS:
  Required records (pick ONE option):

    Option A: ALIAS or ANAME (if your DNS provider supports it)
      example.com  ALIAS  → fzks-qpb6r87d79wfblfj.c1.kamakiri-pages.site.

    Option B: A records
      example.com  A  → 198.51.100.10
      example.com  A  → 198.51.100.11

    Both options work. ALIAS/ANAME is slightly more convenient (CDN
    changes don't require DNS edits); A records work everywhere,
    including providers that don't support ALIAS/ANAME. If you don't
    know which your provider supports, A records are the safe choice.

  Add the DNS record above at your registrar, then come back.
  Safe to close any time (Ctrl-C). Re-run `kamakiri domain verify example.com` or `kamakiri status` to resume.

✓ domain linked on our side
✓ DNS propagated (~12m)
✓ SSL certificate provisioned (~30s)
✓ live: https://example.com

(note: if your browser shows an error, DNS might not have propagated close to you)
$ kamakiri domain set example.com
✓ 正規ドメインを設定しました: example.com

DNSを設定してください:
  必要なレコード(いずれか1つを選択):

    選択肢A: ALIAS または ANAME(DNSプロバイダーが対応している場合)
      example.com  ALIAS  → fzks-qpb6r87d79wfblfj.c1.kamakiri-pages.site.

    選択肢B: Aレコード
      example.com  A  → 198.51.100.10
      example.com  A  → 198.51.100.11

    どちらの方法でも動作します。ALIAS/ANAME の方が少し便利です(CDNを
    変更してもDNSの編集が不要になります)。Aレコードはどの環境でも動作し、
    ALIAS/ANAME に対応していないDNSプロバイダーでも使えます。どちらに
    対応しているか分からない場合は、Aレコードを選べば確実です。


example.com
  上記のDNSレコードをレジストラで追加したら、戻ってきてください。
  いつでも閉じて構いません (Ctrl-C)。`kamakiri domain verify example.com` または `kamakiri status` を再実行すると再開できます。

✓ ドメインをこちら側でリンクしました
✓ DNSの反映を確認しました(約12分)
✓ SSL証明書を発行しました(約30秒)
✓ 公開中: https://example.com

いまのディレクトリに紐付いているサイトの正規ドメインを設定します。変更はすぐに反映され、デプロイは不要です。ただし、ドメインが公開されるにはサイトにデプロイが必要です。ホスト名には、それをカバーするご自身の確認済みの登録が必要です。ない場合は何も変更せず、Domain not registered. Run "kamakiri domain register example.com" first. と表示されます。

同じドメインで再実行しても何も変わらず、見守りが再開されます。すでに公開済みのドメインでは、所要時間なしで各行がすぐに表示されます。別のドメインで実行すると正規ドメインが置き換わり、古いほうはサイトから外れます。サイトにリダイレクトやエイリアスとしてすでにあるホスト名は、DNSの宛先を保ったまま、その場で正規ドメインに昇格します。

kamakiri domain unset

kamakiri domain unset [--no-wait]
$ kamakiri domain unset
✓ domain removed on our side
$ kamakiri domain unset
✓ ドメインをこちら側で削除しました

正規ドメインを外し、サイトは kamakiri-pages.jp のアドレスでの配信に戻ります。リダイレクトが残っている間は拒否されるので、先にそれを外してください。

kamakiri domain add

kamakiri domain add <domain> [--redirect [--status N] | --alias] [--no-wait]
$ kamakiri domain add www.example.com
✓ Domain added: www.example.com (redirect 301)

Configure your DNS:
  www.example.com  CNAME  → h1lc-qpb6r87d79wfblfj.c1.kamakiri-pages.site.

  Add the DNS record above at your registrar, then come back.
  Safe to close any time (Ctrl-C). Re-run `kamakiri domain verify www.example.com` or `kamakiri status` to resume.

✓ domain linked on our side
✓ DNS propagated (~12m)
✓ SSL certificate provisioned (~30s)
✓ live: https://www.example.com

(note: if your browser shows an error, DNS might not have propagated close to you)
$ kamakiri domain add www.example.com
✓ ドメインを追加しました: www.example.com (redirect 301)

DNSを設定してください:
  www.example.com  CNAME  → h1lc-qpb6r87d79wfblfj.c1.kamakiri-pages.site.

www.example.com
  上記のDNSレコードをレジストラで追加したら、戻ってきてください。
  いつでも閉じて構いません (Ctrl-C)。`kamakiri domain verify www.example.com` または `kamakiri status` を再実行すると再開できます。

✓ ドメインをこちら側でリンクしました
✓ DNSの反映を確認しました(約12分)
✓ SSL証明書を発行しました(約30秒)
✓ 公開中: https://www.example.com

リダイレクトを追加するには、先にサイトに正規ドメインが必要です。また、set と同じく、ホスト名をカバーするご自身の確認済みの登録が必要です。サイトにすでにあるホスト名で再実行しても成功し、役割やコードを変えた場合は同じDNSの宛先のまま、その場で適用されます。正規ドメインそのものは拒否されます。正規ドメインは set と unset で管理します。

kamakiri domain remove

kamakiri domain remove <domain> [--no-wait]
$ kamakiri domain remove www.example.com
✓ domain removed on our side
$ kamakiri domain remove www.example.com
✓ ドメインをこちら側で削除しました

リダイレクトまたはエイリアスを、紐付いているサイトに限らず、それを持つご自身のサイトから外します。ただし、実行にはサイトの紐付けが必要です。正規ドメインは拒否されます。正規ドメインを外すのは unset です。

kamakiri domain verify

kamakiri domain verify <domain> [--no-wait]
$ kamakiri domain verify www.example.com
Re-checking www.example.com...

Configure your DNS:
  www.example.com  CNAME  → h1lc-qpb6r87d79wfblfj.c1.kamakiri-pages.site.   ⧗ not yet visible

✓ DNS propagated (~4m)
✓ SSL certificate provisioned (~20s)
✓ live: https://www.example.com
$ kamakiri domain verify www.example.com
www.example.com を再確認しています...

DNSを設定してください:
  www.example.com  CNAME  → h1lc-qpb6r87d79wfblfj.c1.kamakiri-pages.site.   ⧗ まだ検出されていません

✓ DNSの反映を確認しました(約4分)
✓ SSL証明書を発行しました(約20秒)
✓ 公開中: https://www.example.com

1分ほどのうちにドメインをもう一度確認するよう求め、公開されるまで見守ります。止めた見守りを再開するときや、配信から外れてしまったドメインを元に戻すときに使います。ドメインがまだ配信されていない間は、最初にレコードが、直近の確認でDNSに見えた値とともに表示されます。

その名前がサイトになく、ぴったり同じ名前で確認待ちの登録がある場合は、代わりにその登録を確認し、TXTレコードを表示します。一致は完全一致です。example.com だけを登録している場合、verify www.example.com はサイト上のホスト名を確認します。

手動での確認には回数の制限があります。間を置かずに繰り返すと エラー: 確認を実行したばかりです。自動確認はバックグラウンドで続きます。少し時間をおいてからもう一度お試しください と表示され、1で終了します。

kamakiri domain list

kamakiri domain list
$ kamakiri domain list
DOMAIN         STATUS                 SITES
example.com    verified               example.com (canonical), www.example.com (redirect 301)
example.jp     verified               example.jp (alias)
staging.dev    awaiting verification  -
$ kamakiri domain list
ドメイン       状態                   サイト
example.com    確認済み               example.com (canonical), www.example.com (redirect 301)
example.jp     確認済み               example.jp (alias)
staging.dev    確認待ち               -

アカウントのすべての登録を、すべてのサイトにまたがって表示します。サイトの紐付けは不要です。登録が1件もない場合は 登録済みのドメインはありません。`kamakiri domain register <domain>` を実行して登録してください。 と表示されます。1つのサイトのドメインについてDNSと証明書の状態を見るには、kamakiri status を使います。

待機

待機に制限時間はありません。--no-wait を付けると、リクエストが受け付けられた時点で終了します。標準出力がターミナルでない場合、register、set、add、verify は --no-wait のときと同じく、レコードを表示して終了します。待つ対象が、ご自身にしか公開できないレコードだからです。unset と remove はその場合も待ちます。

Ctrl-C で止まるのは見守ることだけで、設定の処理は続きます。set、add、verify の見守りは、kamakiri domain verify <domain> または kamakiri status で、どのマシンからでも再開できます。register の見守りは、もう一度実行すると再開できます。確認が済んだかどうかは kamakiri domain list で分かります。unset や remove の待機中に Ctrl-C を押しても削除は続き、完了したかどうかは kamakiri status で確認できます。

終了コード

サブコマンドごとに、1で終了する拒否は次のとおりです。

ほかのサイトがすでに配信しているホスト名がご自身のサイトのものなら、先にそちらで外してください。