本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

Amazon Route53 Dynamic DNS镜像是一个轻量级工具,用于动态更新AWS Route53托管的DNS A记录,将其设置为当前运行环境的外部IP地址。主要用途是解决动态IP环境下DNS记录自动同步的需求,确保域名始终指向最新的外部IP。
| 警告 |
|---|
| 最新版本不再通过sleep脚本保持容器运行,需通过Cron定时任务或Kubernetes CronJob等方式定期执行。 若需继续使用旧版(通过sleep保持容器运行),请使用镜像标签 :3或3.0.1。 |
AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY)通过Kubernetes Secret安全存储AWS访问凭证:
kubectl create secret generic route53-dyndns-secret \ --from-literal=AWS_ACCESS_KEY_ID='你的AWS访问密钥ID' \ --from-literal=AWS_SECRET_ACCESS_KEY='你的AWS密钥'
创建每5分钟执行一次的CronJob,示例配置如下(更新example.com记录):
apiVersion: batch/v1 kind: CronJob metadata: name: route53-dyndns-cron spec: schedule: "*/5 * * * *" # 每5分钟执行一次 jobTemplate: spec: ttlSecondsAfterFinished: 100 # 任务完成后100秒自动清理 template: spec: containers: - image: docker.io/bshaw/route53-dyndns name: route53-dyndns imagePullPolicy: Always envFrom: - secretRef: name: route53-dyndns-secret # 引用上述创建的Secret args: - --record - example.com # 需更新的DNS记录(替换为实际域名) - --verbose # 启用详细输出 restartPolicy: OnFailure # 任务失败时重启
通过Docker或Podman运行一次性任务,手动触发DNS记录更新:
docker run \ --rm \ # 任务完成后自动删除容器 --name route53-dyndns \ -e AWS_ACCESS_KEY_ID="你的AWS访问密钥ID" \ -e AWS_SECRET_ACCESS_KEY="你的AWS密钥" \ bshaw/route53-dyndns \ --record example.com # 需更新的DNS记录(替换为实际域名) --verbose # 可选:启用详细输出
通过系统Cron配置周期性执行(示例为每5分钟运行一次):
crontab -e*/5 * * * * docker run --rm --name route53-dyndns -e AWS_ACCESS_KEY_ID="你的AWS访问密钥ID" -e AWS_SECRET_ACCESS_KEY="你的AWS密钥" bshaw/route53-dyndns --record example.com --verbose
通过--help查看完整参数列表:
python3 r53dyndns.py --help
输出说明:
usage: r53dyndns.py [-h] [-r RECORD] [-v] 更新Route53托管的A记录为系统当前的外部IP地址。 可选参数: -h, --help 显示帮助信息并退出 -r RECORD, --record RECORD 指定需要更新的DNS A记录(必需) -v, --verbose 启用详细输出,显示IP检查和更新过程
| 环境变量 | 描述 | 示例值 |
|---|---|---|
AWS_ACCESS_KEY_ID | AWS访问密钥ID,需包含Route53操作权限 | AKIAEXAMPLE123 |
AWS_SECRET_ACCESS_KEY | 对应访问密钥ID的AWS密钥 | secret123examplekey |
| 参数 | 简写 | 描述 | 示例 |
|---|---|---|---|
--record | -r | 指定需更新的DNS A记录(必需参数) | example.com |
--verbose | -v | 启用详细输出模式,显示IP获取和更新日志 | 无(存在即启用) |
工具通过DNS查询获取当前外部IP,具体方式为向OpenDNS的公共 resolver 发送查询请求:
dig +short myip.opendns.com @resolver1.opendns.com
该方法无需依赖第三方HTTP API,具有更低的延迟和更高的可用性。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429