Administrator
发布于 2025-01-23 / 16 阅读
0

我的阿里云域名解析设置

docker run -d --name=aliyun-ddns --restart=always --net=host \
    -e "AKID=xxxxx" \
    -e "AKSCT=xxxxx" \
    -e "DOMAIN=sljjj.top,www.sljjj.top,blog.sljjj.top,photos.sljjj.top,qnap.sljjj.top" \
    -e "ROOT_DOMAIN=sljjj.top" \
    -e "REDO=30" \
    -e "TTL=60" \
    -e "TIMEZONE=8.0" \
    -e "TYPE=A,AAAA" \
    sanjusss/aliyun-ddns

以下是对 docker run 命令中参数配置的详细解释:


基本说明

该命令运行一个容器,使用 sanjusss/aliyun-ddns 镜像来配置和管理阿里云的动态域名解析 (DDNS)。具体参数的含义如下:


Docker 参数

  1. -d

    • 启动容器后以后台模式运行。

  2. --restart=always

    • 设置容器的自动重启策略,当容器退出时始终尝试重新启动。适合长时间运行的服务。

  3. --net=host

    • 将容器的网络设置为主机模式(即与主机共用网络栈)。

      • 优点:容器内的服务可以直接使用主机的网络配置,无需额外映射端口。

      • 用途:对于 DDNS 服务来说,可能需要与主机环境的网络配置无缝对接。


环境变量参数

通过 -e 参数传递环境变量给容器:

1. DOMAIN=sljjj.top,www.sljjj.top

  • 指定需要动态更新的域名,多个域名用逗号 , 分隔。

  • sljjj.topwww.sljjj.top 是要更新的主域名及子域名。

    • sljjj.top:主域名。

    • www.sljjj.top:子域名(www 为主机名)。

  • 动态解析服务会针对这些域名进行 IP 地址更新。


2. ROOT_DOMAIN=sljjj.top

  • 设置根域名,用于解析域名和主机名。

    • 在此配置中:

      • 根域名为 sljjj.top,即所有子域名的父域。

      • 动态域名解析服务会根据这个根域名解析相关记录。


3. REDO=30

  • 刷新间隔时间(单位:秒):

    • 表示服务每隔 30 秒检查一次公网 IP 是否发生变化,并更新解析记录。

    • 如果公网 IP 未变化,则不更新。


4. TTL=60

  • 域名解析记录的生存时间(TTL,单位:秒):

    • 设置 DNS 记录在缓存中的有效期。

    • 这里设置为 60 秒,意味着 DNS 缓存会在 60 秒后刷新。


5. TIMEZONE=8.0

  • 时区设置:

    • 设置容器运行环境的时区。

    • 这里为 8.0,表示东八区(北京时间)。


6. TYPE=A,AAAA

  • 解析记录类型:

    • 指定更新的解析记录类型:

      • A:IPv4 地址解析记录。

      • AAAA:IPv6 地址解析记录。

    • 服务会同时处理 IPv4 和 IPv6 的解析记录。


镜像名称

  • sanjusss/aliyun-ddns

    • 这是 Docker 镜像名,用于运行阿里云动态域名解析服务。


总结用途

这个命令的作用是启动一个基于 Docker 的动态域名解析服务,定期更新阿里云上的 DNS 解析记录,以便将动态公网 IP 自动同步到指定的域名(sljjj.topwww.sljjj.top)。它适用于动态公网 IP 环境下的服务,例如家庭宽带等。

如果需要进一步优化配置或测试使用,请告诉我!