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

或[***](URL变量授权方式)。
您还可以通过GET变量指定IPv4和IPv6地址(myip=your.ipv4.address.here和myipv6=your:ipv6:address:here)。
示例:
[***][***][***]或使用现成的Docker镜像(参见下文“使用Docker安装”部分)。
获取最新版本有两种方法:
*(推荐)下载最新发布版并解压到您想要提供服务的Web目录(例如/var/www/dyndns)
/var/www/dyndns)直接克隆仓库需要使用Composer下载依赖:composer install
下载完成后,继续以下步骤:
config.sample.json复制为config.jsonconfig.json以满足您的需求(详见下文“配置”部分)allow-update { localhost; })PHPDynDNS也提供Docker镜像。可从Docker Hub拉取。
将您的config.json挂载到/app/config.json
启动容器的示例命令:
docker run -d --name phpdyndns -p 80:80 -v /path/to/config.json:/app/config.json:ro programie/phpdyndns
确保config.json不能通过HTTP访问!在Apache中,这已通过.htaccess文件实现。
配置通过存储在config.json文件中的JSON完成,示例如下:
{ "server": "localhost", "ttl": 60, "users": { "myuser": { "password_hash": "$5$1IekWfmq$yVTjQcWsX/qK.TIws0NWAj0mmlyDFsSMw6nSFYHcyH8", "hosts": { "myhost.example.com": { "zone": "example.com" }, "anotherhost.example.com": { "zone": "anotherhost.example.com" } }, "post_process": "nohup sudo /opt/some-script.sh %hostname% %ipv4address%" } } }
server:要连接的DNS服务器(默认:localhost)ttl:PHPDynDNS管理的所有DNS条目的TTL(生存时间)(默认:60)users:所有用户的列表(每个条目的键为用户名)
password_hash:用户的哈希密码(例如使用mkpasswd -m sha-256生成)hosts:用户可更新的所有主机列表(每个条目的键为要更新的主机名)
zone:包含此主机名的区域post_process:成功更新DNS条目后应执行的命令(可包含占位符,见下文说明)post_process选项中可使用以下占位符,执行时会被替换:
%username%:用户名%hostname%:主机名%ipv4address%:新的IPv4地址(如可用)%ipv6address%:新的IPv6地址(如可用)自定义[***]<username>&password=<pass>&hostname=<domain>&myip=<ipaddr>your.configured.host.of.your.domain您配置的用户名您配置的密码如果您的路由器不支持向(自定义)DynDNS服务发送更新,可使用此方法。每次请求都会更新DNS区域!
* * * * * curl [***]
这将每分钟更新您的域名your.domain.tld。
将your-username、your-password和your.domain.tld替换为您配置的用户名、密码和域名。
PHP DynDNS可在成功更新DynDNS主机名后触发用户定义的命令。
例如,命令/opt/reload-iptables.sh可使用DynDNS主机名的新IP地址自动重新加载iptables。
后处理命令可在config.json中为每个用户单独配置。
PHP DynDNS可在成功更新主机名后执行命令。此类命令可从文件重新加载iptables规则,强制iptables重新查找动态主机名。
后处理脚本示例如下:
#! /bin/sh /sbin/iptables-restore < /path/to/your/iptables.rules
iptables.rules示例如下:
*filter # 设置默认策略 :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] # 允许已建立的连接 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT # 允许本地连接 -A INPUT -i lo -j ACCEPT -A OUTPUT -o lo -j ACCEPT -A FORWARD -i lo -o lo -j ACCEPT # 允许HTTP -A INPUT -p tcp --dport 80 -j ACCEPT # DynDNS -A INPUT -p tcp --dport 22 -s yourhost.example.com -j ACCEPT COMMIT
注意:您必须使用root权限调用脚本(如sudo)!只需允许运行Web服务器的用户(如www-data)以root身份执行脚本(如在/etc/sudoers文件中添加www-data ALL=(ALL) NOPASSWD:/opt/scripts/update_dyndns_iptables.sh)。
免费版仅支持 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