基于官方 Caddy 镜像构建的增强版容器,内置常用插件,并额外提供
naive变体。
caddy,镜像源码在 caddyserver/caddy-docker。naive 变体额外包含 forward_proxy 模块的 naive 分支,相关能力来自 caddyserver/forwardproxy 与 klzgrad/naiveproxy。caddy:<version>-alpine 基础上重新编译,并内置:
github.com/caddy-dns/cloudflaregithub.com/caddyserver/transform-encodergithub.com/greenpau/caddy-securitygithub.com/greenpau/caddy-tracegithub.com/caddyserver/replace-responsegithub.com/mholt/caddy-l4naive 变体额外编译:
github.com/caddyserver/forwardproxy=github.com/klzgrad/forwardproxy@naivetzdata,默认设置 TZ=Asia/Shanghai。caddy-fmt、caddy-check、caddy-reload。ignimutos/caddy:latest 和 ignimutos/caddy:<version>naive 变体:ignimutos/caddy:naive-latest 和 ignimutos/caddy:naive-<version>caddy-base、caddy-naive。/etc/caddy/Caddyfile 读取配置,并使用 caddyfile adapter 启动。/data/caddy,保存证书与运行状态。TZ 覆盖容器时区。naive 变体,需要在 Caddyfile 中显式启用 forward_proxy。forwardproxy/NaïveProxy 文档,代理场景通常应让站点地址以 :443 开头;如果同时使用 file_server,需要把 forward_proxy 放到更靠前的顺序,例如全局 order forward_proxy before file_server。/etc/caddy/Caddyfile:默认加载的主配置文件/usr/bin/caddy-fmt:格式化 /etc/caddy/Caddyfile/usr/bin/caddy-check:格式化后执行 caddy adapt/usr/bin/caddy-reload:格式化后执行 caddy reload80/tcp:HTTP443/tcp:HTTPS443/udp:HTTP/3 / QUIC,镜像未显式 EXPOSE,如需启用请在运行时自行映射/data/caddy:已声明为持久化卷默认变体示例:
docker run -d \
--name caddy \
-p 80:80 \
-p 443:443 \
-p 443:443/udp \
-e TZ=Asia/Shanghai \
-v "$PWD/Caddyfile:/etc/caddy/Caddyfile:ro" \
-v caddy_data:/data/caddy \
ignimutos/caddy:latest
naive 变体最小示例:
{
order forward_proxy before file_server
}
:443, example.com {
tls [email protected]
forward_proxy {
basic_auth user pass
hide_ip
hide_via
probe_resistance
}
}
docker run -d \
--name caddy-naive \
-p 443:443 \
-p 443:443/udp \
-e TZ=Asia/Shanghai \
-v "$PWD/Caddyfile:/etc/caddy/Caddyfile:ro" \
-v caddy_data:/data/caddy \
ignimutos/caddy:naive-latest
caddy run --config /etc/caddy/Caddyfile --adapter caddyfile,容器内必须存在可用的 Caddyfile。caddy-check 与 caddy-reload 都默认操作 /etc/caddy/Caddyfile。naive 是仓库里的 target 名;对外发布的 Docker tag 是 naive-latest / naive-<version>。Content type
Image
Digest
sha256:0b3e344a8…
Size
46.9 MB
Last updated
about 14 hours ago
docker pull ignimutos/caddy