
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为 Electronic Frontier Foundation (EFF) 官方构建的 Certbot Docker 镜像,集成了 DigitalOcean DNS 插件。主要用于通过 DNS-01 挑战(DNS-01 challenge)自动化获取和续期 Let's Encrypt SSL/TLS 证书,适用于使用 DigitalOcean 作为 DNS 服务提供商的用户。
*.example.com)申请证书。*.example.com)或跨子域名批量申请证书。dns:edit 权限的个人访问令牌(Personal Access Token),用于操作 DNS 记录。以下示例通过 docker run 命令申请证书,使用环境变量传入 DigitalOcean API 令牌:
bashdocker run --rm \ -v /etc/letsencrypt:/etc/letsencrypt \ # 挂载证书存储目录(持久化证书和配置) -v /var/log/letsencrypt:/var/log/letsencrypt \ # 挂载日志目录 -e DO_API_TOKEN="your_digitalocean_api_token" \ # DigitalOcean API 令牌(必填) certbot/dns-digitalocean \ certonly \ # 仅申请证书(不自动配置服务器) --dns-digitalocean \ # 启用 DigitalOcean DNS 插件 --dns-digitalocean-token-env DO_API_TOKEN \ # 指定 API 令牌环境变量名 --email "admin@example.com" \ # 管理员邮箱(用于证书过期提醒) --agree-tos \ # 同意 Let's Encrypt 服务条款 --no-eff-email \ # 不向 EFF 发送邮件(可选) -d "example.com" \ # 目标域名(可重复 -d 参数添加多个域名) -d "*.example.com" # 通配符域名(需 DNS-01 挑战支持)
通过 docker-compose.yml 定义服务,实现证书申请与续期自动化:
yamlversion: '3' services: certbot: image: certbot/dns-digitalocean volumes: - ./letsencrypt:/etc/letsencrypt # 本地目录挂载,持久化证书和配置 - ./logs:/var/log/letsencrypt # 日志目录 - ./credentials:/etc/certbot/credentials # 凭证文件目录(可选,替代环境变量) environment: - TZ=Asia/Shanghai # 时区设置(可选) command: > certonly --dns-digitalocean --dns-digitalocean-credentials /etc/certbot/credentials/digitalocean.ini # 凭证文件路径 --email admin@example.com --agree-tos --non-interactive # 非交互式模式(适合脚本/定时任务) --keep-until-expiring # 仅在证书即将过期时续期 -d example.com -d *.example.com
凭证文件示例(./credentials/digitalocean.ini,需设置权限 chmod 600):
inidns_digitalocean_token = your_digitalocean_api_token
| 参数 | 说明 | 示例 |
|---|---|---|
certonly | 仅申请证书,不自动配置 Web 服务器 | certonly |
--email | 管理员***(用于证书通知) | --email admin@example.com |
--agree-tos | 同意 Let's Encrypt 服务条款 | --agree-tos |
--non-interactive | 非交互式运行(适合自动化脚本) | --non-interactive |
-d | 目标域名(可重复指定多个) | -d example.com -d test.com |
--dry-run | 测试模式(不实际申请证书) | --dry-run |
| 参数 | 说明 | 示例 |
|---|---|---|
--dns-digitalocean | 启用 DigitalOcean DNS 插件 | --dns-digitalocean |
--dns-digitalocean-token | 直接指定 DigitalOcean API 令牌(不推荐,明文暴露) | --dns-digitalocean-token "token" |
--dns-digitalocean-token-env | 从环境变量读取 API 令牌 | --dns-digitalocean-token-env DO_TOKEN |
--dns-digitalocean-credentials | 从文件读取 API 令牌(推荐,更安全) | --dns-digitalocean-credentials /path/to/ini |
--dns-digitalocean-propagation-seconds | DNS 记录传播等待时间(默认 10 秒) | --dns-digitalocean-propagation-seconds 30 |
dns:edit 权限,否则无法添加/删除 TXT 记录。600,仅 root 可读写)。volumes 挂载本地目录存储 /etc/letsencrypt,避免容器删除导致证书丢失。docker run --rm ... renew)定期执行证书续期,例如:
bash# 每日凌晨 3 点执行续期检查 0 3 * * * docker run --rm -v /etc/letsencrypt:/etc/letsencrypt certbot/dns-digitalocean renew --non-interactive
/var/log/letsencrypt 目录查看详细日志定位问题。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




来自真实用户的反馈,见证轩辕镜像的优质服务