
nwesterhausen/domain-monitordomain-monitor是一个自托管服务器,用于监控指定域名的WHOIS记录,帮助提醒域名即将到期,并在域名发生意外变更时发出警报。需遵守各TLD WHOIS服务器的服务条款,避免高频率查询、营销用途及超出合理注册需求的自动化查询。
镜像使用两个卷挂载,用于配置文件和缓存数据:
| 镜像挂载路径 | 包含内容 |
|---|---|
| /app/config | config.yaml和domain.yaml配置文件 |
| /app/whois-data | 缓存的WHOIS数据(YAML格式) |
暴露端口:4201/tcp(用于Web GUI访问)
主镜像为server镜像,可从Github Packages获取。
镜像名称:nwesterhausen/domain-monitor,可使用latest标签获取最新版本或指定版本标签。
bashdocker run -d \ -p 4201:4201 \ -v ./domain-monitor-config:/app/config \ -v ./domain-monitor-whois:/app/whois-data \ --name domain-monitor \ nwesterhausen/domain-monitor:latest
支持Node.js >= 12,跨平台运行:
bashgit clone [***] cd domain-monitor yarn node ./index.js
通过Web GUI(默认地址:http://localhost:4201)进行配置。
首次运行时,若不存在config.yaml,系统会自动从sample.config.yaml复制生成。Web GUI的配置更改会自动保存到该文件。
设置HTTP服务器(含WebSocket)端口:
yamlapp: port: 4201 # 默认端口
admin:接收警报的***地址sendalerts:布尔值,设为false时禁用所有警报yamlalerts: admin: *** # 警报接收*** sendalerts: yes # 是否发送警报
配置发送邮件警报的SMTP参数(基于Nodemailer):
yamlsmtp: host: localhost # SMTP服务器地址 port: 25 # SMTP端口 secure: false # 是否启用TLS auth: user: *** # SMTP认证用户名 pass: SECRET-PASS # SMTP认证密码
包含domains列表,定义需监控的域名,每个域名属性如下:
| 属性 | 类型 | 描述 |
|---|---|---|
| name | string | 域名条目的描述性名称 |
| fqdn | string | 域名的完全限定域名(格式:host.tld) |
| alerts | bool | 是否为该域名发送邮件警报 |
| enabled | bool | 是否启用WHOIS查询(按前述规则执行) |
| id | string | 系统生成的ID(手动添加时无需填写,系统自动生成) |
示例:
yamldomains: - name: "My Main Domain" fqdn: "example.com" alerts: true enabled: true - name: "Secondary Domain" fqdn: "example.org" alerts: false enabled: true


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务