Infra Ops Hub
Troubleshoot

Caddy の SSL 自動更新が動かない

最終更新: 2026-04-25

症状

Caddy v2 の auto HTTPS で証明書が期限切れになる / 新規取得できない

  • Caddyfile は書けているがブラウザで証明書エラー
  • journalctl -u caddy で ACME エラーが繰り返し出る
  • Docker 再起動時に毎回再発行される

想定される原因

  1. 1

    80 / 443 がインターネットから到達できない

    ファイアウォール / SG / NAPT の構成で challenge 失敗。

  2. 2

    /data/caddy が永続化されていない

    ACME の account / 証明書 / nonce が毎回揮発する構成。

    確認: docker compose の volume 設定を確認

  3. 3

    Cloudflare 前段で HTTP-01 が通らない

    tls { dns cloudflare {env.CF_API_TOKEN} } で DNS-01 にする。

対処手順

  1. Caddyfile の global options に email を追加
  2. Cloudflare 前段なら DNS-01 + API Token を設定
  3. caddy reload、ダメなら systemctl restart caddy
  4. /tools/ssl-check で validTo を確認

再発を防ぐ

同じ障害を繰り返さないために、期限監視 / 自動通知の設定を推奨します。

期限監視を登録(無料)

関連ページ

まず確認すること

  • ss -lnt で 80/443 LISTEN を確認
  • /data/caddy が Docker volume として永続化
  • Caddy のバージョンが v2 最新
SSL / Domain

この Issue への推奨アクション: 期限監視を登録(無料)

SSL / Domain

このテーマの関連ページ