
faradaytrs/caddy本镜像基于官方Caddy服务器构建,集成Cloudflare DNS插件,专门用于解决需要通过DNS验证获取SSL证书的场景。通过Cloudflare DNS插件,可实现ACME DNS-01挑战,支持在无法使用HTTP验证的环境中自动签发和续期SSL证书,大幅简化HTTPS服务部署流程。
caddy-dns/cloudflare插件,原生支持ACME DNS-01挑战验证DNS:Edit权限)在宿主机创建Caddyfile(示例配置):
caddyfile# 替换为实际域名 example.com { # 配置反向代理(根据实际需求修改) reverse_proxy 192.168.1.100:8080 # 启用Cloudflare DNS验证 tls { dns cloudflare {env.CLOUDFLARE_API_TOKEN} } }
bashdocker run -d \ --name caddy-cloudflare \ -p 80:80 \ -p 443:443 \ -v $(pwd)/Caddyfile:/etc/caddy/Caddyfile \ -v caddy_data:/data/caddy \ # 持久化存储证书和配置 -e CLOUDFLARE_API_TOKEN="your_cloudflare_api_token" \ # 替换为实际API令牌 caddy-cloudflare-dns:latest
创建docker-compose.yml:
yamlversion: '3.8' services: caddy: image: caddy-cloudflare-dns:latest container_name: caddy-cloudflare ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data/caddy # 持久化证书和配置数据 environment: - CLOUDFLARE_API_TOKEN=your_cloudflare_api_token # 替换为实际API令牌 restart: unless-stopped volumes: caddy_data: # 命名卷,确保数据持久化
启动服务:
bashdocker-compose up -d
| 变量名 | 说明 | 必填性 |
|---|---|---|
CLOUDFLARE_API_TOKEN | Cloudflare API令牌,需包含Zone.DNS:Edit权限 | 是 |
CLOUDFLARE_EMAIL | Cloudflare账号***(仅旧版API需要,推荐使用API令牌) | 否 |
CADDY_HTTP_PORT | 自定义HTTP端口(默认80) | 否 |
CADDY_HTTPS_PORT | 自定义HTTPS端口(默认443) | 否 |
caddyfile*.example.com { # 静态文件服务配置(根据实际需求修改) root * /usr/share/caddy file_server # Cloudflare DNS验证配置 tls { dns cloudflare {env.CLOUDFLARE_API_TOKEN} # 可选:指定CA机构(默认Let's Encrypt) # ca https://acme-staging-v02.api.letsencrypt.org/directory # 可选:设置证书有效期提醒阈值 # expiry_window 30d } }
为避免容器重启后证书和配置丢失,必须挂载数据卷:
/data/caddy:存储SSL证书、私钥及Caddy运行时数据,建议使用命名卷或宿主机目录挂载Zone:DNS:Edit权限,否则无法完成DNS记录修改caddy validate命令验证Caddyfile语法正确性docker logs caddy-cloudflare)dns cloudflare配置块

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务