本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

docker-dynamic-dns-netcup-api Docker 镜像下载 - 轩辕镜像

docker-dynamic-dns-netcup-api 镜像详细信息和使用指南

docker-dynamic-dns-netcup-api 镜像标签列表和版本信息

docker-dynamic-dns-netcup-api 镜像拉取命令和加速下载

docker-dynamic-dns-netcup-api 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

docker-dynamic-dns-netcup-api
mm28ajos/docker-dynamic-dns-netcup-api

docker-dynamic-dns-netcup-api 镜像详细信息

docker-dynamic-dns-netcup-api 镜像标签列表

docker-dynamic-dns-netcup-api 镜像使用说明

docker-dynamic-dns-netcup-api 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

用于通过netcup API更新netcup域名服务器所管理的A和AAAA DNS记录的Docker容器。
1 收藏0 次下载activemm28ajos镜像

docker-dynamic-dns-netcup-api 镜像详细说明

docker-dynamic-dns-netcup-api 使用指南

docker-dynamic-dns-netcup-api 配置说明

docker-dynamic-dns-netcup-api 官方文档

Docker化的netcup DNS API动态DNS客户端

!Docker Pulls !Docker Build

一个基于PHP的Docker化动态DNS客户端,用于netcup DNS API。 本项目是[***]

核心功能与特性

  • 无需外部第三方查询即可确定公网IP地址(IPv4和IPv6)
    • IPv6通过本地网络适配器获取
    • IPv4通过本地FritzBox获取。注:若没有FritzBox或作为 fallback,可使用外部服务获取IPv4地址
  • 可设置仅考虑不带隐私扩展的IPv6地址(SLAAC)
  • 缓存提供给netcup DNS的IP,避免不必要的API调用
  • 支持更新特定或多个子域名及域名根
  • 当更新/获取新IP地址出现警告/错误时发送邮件告警
  • 可分别配置IPv4和IPv6的更新主机
  • 若指定的子域名DNS记录不存在,自动创建该记录
  • 配置后,可在每次运行时将域名TTL降至300秒(如需要)
  • IP地址变更时重启Docker容器(需将docker socket暴露给容器)

需求

  • 成为netcup客户:[***]
  • 无需成为域名经销商即可使用本客户端所需功能——所有拥有域名的客户均可使用
  • netcup API密钥和API密码,可在CCP([***]
  • 一个域名 :wink:

使用场景与适用范围

适用于netcup域名用户需要动态更新DNS记录的场景,如家庭网络、动态IP环境下的服务器、需要IPv6动态解析的设备等,尤其适合需要分别管理IPv4和IPv6记录、或需在IP变更时自动重启相关服务的用户。

使用方法与配置说明

Docker Compose部署

创建docker-compose文件,示例如下。注意:为从本地适配器获取IPv6地址,network_mode必须设为host。调试时,可覆盖默认命令(见示例)。若需在IPv6地址变更时重启其他容器,需将docker socket作为卷挂载到容器。将更新脚本的配置文件和msmtprc(如需邮件通知)作为卷挂载,并通过TZ环境变量设置时区。也可使用环境变量配置脚本设置(见下一节)。

仅使用配置文件的示例

yaml
services:
  dynamic-dns-netcup-updater:
    image: mm28ajos/docker-dynamic-dns-netcup-api:latest
    volumes:
      - /path/config.ini:/usr/src/dynamic-dns-netcup-api/config.ini  # 脚本配置文件
      - /path/msmtprc.conf:/root/.msmtprc  # 邮件配置(如需)
      - /var/run/docker.sock:/var/run/docker.sock  # 如需重启容器
    network_mode: host
    # 调试时覆盖命令:command: php ./update-docker.php
    environment:
      - TZ=Europe/Berlin  # 设置时区
    restart: unless-stopped

使用环境变量的示例

yaml
services:
  dynamic-dns-netcup-updater:
    image: mm28ajos/docker-dynamic-dns-netcup-api:latest
    volumes:
      - /path/msmtprc.conf:/root/.msmtprc  # 邮件配置(如需)
      - /var/run/docker.sock:/var/run/docker.sock  # 如需重启容器
    network_mode: host
    environment:
      - TZ=Europe/Berlin
      - CUSTOMERNR=***  # netcup客户编号
      - APIKEY=abcdefghijklmnopqrstuvwxyz  # API密钥
      - APIPASSWORD=abcdefghijklmnopqrstuvwxyz  # API密码
      - DOMAIN=mydomain.com  # 域名
      - USE_IPV4=true  # 启用IPv4更新
      - HOST_IPv4=sub.subdomainA,server1.subdomainC  # IPv4子域名(逗号分隔)
      - USE_FRITZBOX=false  # 是否使用FritzBox获取IPv4
      - FRITZBOX_IP=fritz.box  # FritzBox IP(USE_FRITZBOX=true时需设置)
      - USE_IPV6=false  # 启用IPv6更新
      - HOST_IPv6=sub.subdomainB,server1.subdomainB  # IPv6子域名(逗号分隔)
      - IPV6_INTERFACE=eth0  # IPv6网络接口
      - NO_IPV6_PRIVACY_EXTENSIONS=true  # 仅使用不带隐私扩展的IPv6地址
      - CHANGE_TTL=true  # 是否将TTL降至300秒
      - SEND_MAIL=false  # 启用邮件告警
      - MAIL_RECIPIENT=***  # 邮件接收地址
      - SLEEP_INTERVAL_SEC=5  # 检查间隔(秒)
      - RESTART_CONTAINERS=true  # IP变更时重启容器
      - CONTAINERS=containerA,ContainerB  # 需重启的容器名(逗号分隔)
    restart: unless-stopped

配置文件说明

config.ini配置

挂载至/usr/src/dynamic-dns-netcup-api/config.ini,参数说明如下:

ini
; netcup客户编号
CUSTOMERNR = ***

; API密钥和密码(从CCP获取)
APIKEY = abcdefghijklmnopqrstuvwxyz
APIPASSWORD = abcdefghijklmnopqrstuvwxyz

; 目标域名
DOMAIN = mydomain.com


; 启用IPv4更新
USE_IPV4 = true

; IPv4子域名(逗号分隔,@表示根域名,*表示通配符),不存在时自动创建记录
HOST_IPv4 = sub.subdomainA, server1.subdomainC

; 是否通过FritzBox获取IPv4
USE_FRITZBOX = false

; FritzBox IP(USE_FRITZBOX=true时必填,默认fritz.box)
; FRITZBOX_IP = fritz.box


; 启用IPv6更新(需IPv6网络环境,否则会报错)
USE_IPV6 = false

; IPv6子域名(逗号分隔,格式同上)
; HOST_IPv6 = sub.subdomainB, server1.subdomainB

; IPv6网络接口(USE_IPV6=true时必填)
; IPV6_INTERFACE = eth0

; 是否仅使用不带隐私扩展的IPv6地址(SLAAC)
; NO_IPV6_PRIVACY_EXTENSIONS = true

; 是否将TTL降至300秒(如需要)
CHANGE_TTL = true

; 启用邮件告警(需配置msmtp)
SEND_MAIL = false

; 邮件接收地址(SEND_MAIL=true时必填)
; MAIL_RECIPIENT = ***

; IP检查间隔(秒)
SLEEP_INTERVAL_SEC = 5

; IP变更时重启容器(需挂载docker socket)
RESTART_CONTAINERS = false

; 需重启的容器名(RESTART_CONTAINERS=true时必填,逗号分隔)
; CONTAINERS = containerA,containerB

邮件配置(msmtprc.conf)

如需邮件告警,挂载至/root/.msmtprc,示例:

ini
# 全局设置
defaults

# 认证与TLS配置
auth on
tls on
tls_starttls off
tls_certcheck on

# 默认账户设置
account default
add_missing_from_header on
host "smtp.domain.tld"  # SMTP服务器
port 465  # SMTP端口
domain "domain.tld"
maildomain "domain.tld"
user username  # SMTP用户名
password "password"  # SMTP密码
from "***"  # 发件人地址

用户好评

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

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"