採用に向く条件
選ぶ理由
- HTTPS を自動取得・更新
- 設定が極めて簡単(Caddyfile)
- 単一バイナリ・Go 製で手軽
製品プロフィール
Matt Holt / 2015年登場
Let’s Encrypt による HTTPS を自動化する新しい Web サーバ。設定が極めて簡単で、単一バイナリで動く。
基本情報
公開規模・コミュニティ・成熟度を比較できる指標です。GitHub / npm は2026年6月7日時点のスナップショットです。
選定ガイド
採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。
採用に向く条件
事前に確認する条件
詳しい解説
Caddy(キャディ)は、Matt Holt 氏が開発し 2015 年に公開した Web サーバーです。Go 言語で書かれ、HTTPS をはじめから簡単に扱えることを最大の売りにしています。
横にスクロール
設定の手軽さと運用のしやすさを重視した、比較的新しい世代の Web サーバー/リバースプロキシです。
最大の特徴は ACME プロトコル(Let's Encrypt 等)と連携した HTTPS の自動化です。ドメインを設定するだけで証明書を自動で取得・更新し、有効期限切れも自前で面倒を見ます。さらに既定で HTTPS が標準(自動リダイレクト) という思想で、TLS まわりの手作業がほぼ不要になります。ローカル開発では内部 CA を使って自己署名証明書を自動発行する仕組みもあります。
設定は Caddyfile という簡潔な形式で書け、数行で公開できます。
example.com {
reverse_proxy localhost:8080
}
Go 製のため単一バイナリ・依存なしで動き、配布が容易です。内部は HTTP/1.1・HTTP/2・HTTP/3 に対応し、機能はプラグイン(モジュール)で拡張できます。設定は JSON 構造が基盤で、Caddyfile はその簡易表記にあたります。稼働中に 管理 API 経由で設定を動的変更できる点も特徴です。
Caddyfile が読みやすく、最小限の設定で動かせる。| 観点 | Caddy | Nginx |
|---|---|---|
| HTTPS | 自動取得・更新が標準 | 証明書は自前で用意・更新設定 |
| 設定 | Caddyfile が極めて簡潔 | 高機能だが記述量は多め |
| 配布 | 単一バイナリ・依存なし | パッケージ導入が一般的 |
| 実績・事例 | 新しめ・蓄積はこれから | 膨大・大規模運用の定番 |
| 拡張 | モジュール(要ビルドの場合あり) | モジュール/OpenResty 等 |
個人サイトや小〜中規模のサービス、社内ツールなど、HTTPS を手早く・確実に立ち上げたい場面に向きます。
証明書の取得・更新が標準で自動化されているため、TLS の設定や更新忘れによる失効事故を避けたい構成では特に有効です。手間を最小化したいなら有力ですが、長期運用の枯れた知見や大規模実績を重視するなら定番勢も比較検討します。
総じて Caddy は、HTTPS 自動化と設定の簡潔さで「立ち上げの速さ」に強みを持つ、現代的な Web サーバー/リバースプロキシです。
実装・運用の視点
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
手軽に HTTPS 化
GitHub Stars: 73.2K / Forks: 4.8K / 公開から: 約11年
設定が極めて簡単(Caddyfile)
実績は Nginx/Apache に劣る
向いている用途