安装
Caddy 是一个静态编译的 Go 程序,不依赖 glibc 版本、不需要运行时。这意味着下载、解压、运行,三步结束。
Linux
章节「Linux」推荐用官方仓库,可以自动跟版本:
# Ubuntu / Debiansudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curlcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' \ | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' \ | sudo tee /etc/apt/sources.list.d/caddy-stable.listsudo apt updatesudo apt install caddy不用仓库也行,直接下二进制:
curl -o caddy 'https://caddyserver.com/api/download?os=linux&arch=amd64'sudo install caddy /usr/local/bin/caddymacOS
章节「macOS」brew install caddyHomebrew 会顺便装好 caddy.service,需要常驻就跑:
brew services start caddyWindows
章节「Windows」winget install caddyserver.caddy或者用 scoop:
scoop bucket add main https://github.com/caddy-scoop/scoop-bucketscoop install caddyDocker
章节「Docker」docker run -d \ -p 80:80 \ -p 443:443 \ -p 443:443/udp \ -v /path/to/Caddyfile:/etc/caddy/Caddyfile:ro \ -v caddy_data:/data \ -v caddy_config:/config \ caddy:2三个挂载点各司其职:
| 挂载 | 用途 |
|---|---|
/etc/caddy |
配置文件 |
/data |
证书和密钥,必须持久化,否则每次重建容器都要重新申请证书 |
/config |
自动生成的运行时配置 |
systemd 服务
章节「systemd 服务」包管理器安装会自动创建 /etc/systemd/system/caddy.service。手装的需要自己写:
[Unit]Description=CaddyAfter=network.target
[Service]Type=notifyUser=caddyGroup=caddyExecStart=/usr/local/bin/caddy run --environ --config /etc/caddy/CaddyfileExecReload=/bin/kill -USR1 $MAINPIDRestart=on-failureRestartSec=5s
[Install]WantedBy=multi-user.targetsudo systemctl daemon-reloadsudo systemctl enable --now caddysudo systemctl reload caddy # 改完配置后热加载验证
章节「验证」caddy versioncaddy list-modules | wc -l # 模块数量,确认编译没被裁剪sudo caddy validate --config /etc/caddy/Caddyfile