
ricariel/certbotcertbot-docker是一款封装了Certbot工具的Docker镜像,旨在提供容器化环境下SSL/TLS证书的全生命周期管理。Certbot是Let's Encrypt官方推荐的证书工具,支持自动获取、续期免费SSL/TLS证书,该镜像简化了Certbot在容器环境中的部署与使用,无需在主机系统安装依赖即可为Web服务(如Nginx、Apache)配置HTTPS加密。
通过HTTP-01验证方式为example.com和[***]获取证书:
bashdocker run -it --rm \ -v /host/path/certbot/conf:/etc/letsencrypt \ # 持久化存储证书配置 -v /host/path/certbot/www:/var/www/certbot \ # 挂载验证文件目录 certbot/certbot certonly \ --webroot \ # 使用Webroot验证模式 --webroot-path=/var/www/certbot \ # 容器内验证文件路径 --email *** \ # 管理员***(用于证书通知) --agree-tos \ # 同意服务条款 --no-eff-email \ # 不向EFF分享*** -d example.com \ # 主域名 -d [***] # 附加域名
Certbot证书默认90天有效期,可通过以下命令手动触发续期(建议配置定时任务自动执行):
bashdocker run -it --rm \ -v /host/path/certbot/conf:/etc/letsencrypt \ -v /host/path/certbot/www:/var/www/certbot \ certbot/certbot renew
获取泛域名证书(如*.example.com)需使用DNS-01验证,需手动添加DNS TXT记录:
bashdocker run -it --rm \ -v /host/path/certbot/conf:/etc/letsencrypt \ certbot/certbot certonly \ --manual \ # 手动模式 --preferred-challenges dns \ # 指定DNS验证 --email *** \ --agree-tos \ -d example.com \ -d "*.example.com" # Wildcard域名
执行后按提示添加TXT记录至域名解析,验证通过后证书将保存至/host/path/certbot/conf。
yamlversion: '3.8' services: certbot: image: certbot/certbot volumes: - ./certbot/conf:/etc/letsencrypt - ./certbot/www:/var/www/certbot command: certonly --webroot --webroot-path=/var/www/certbot --email *** --agree-tos --no-eff-email -d example.com -d [***] restart: unless-stopped
| 参数/卷挂载 | 说明 |
|---|---|
/etc/letsencrypt | 证书存储目录,需持久化挂载以保留证书(必选) |
/var/www/certbot | HTTP-01验证文件存放目录,需与Web服务共享(HTTP验证时必选) |
--webroot | 使用Webroot插件进行HTTP-01验证 |
--manual | 手动模式,支持DNS-01等非自动验证方式 |
--email | 管理员***,用于证书到期通知与紧急恢复 |
-d <domain> | 指定证书覆盖的域名,可重复多次添加多个域名 |
renew | 续期所有即将过期的证书(默认剩余30天内触发续期) |
/etc/letsencrypt目录,避免容器重建导致证书丢失-u参数指定用户ID*.example.com),需手动或通过插件自动配置DNS记录renew命令确保证书自动续期





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务