主机论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 159|回复: 5

docker一键自建PowerDNS权威DNS服务器

[复制链接]

119

主题

2372

回帖

5615

积分

论坛元老

Rank: 8Rank: 8

积分
5615
发表于 2025-2-9 21:29:19 | 显示全部楼层 |阅读模式
啥意思呢?白话就是你的域名可以不用放在cloudflare,放在自己自建ns服务器上。就类似于这个: pam.ns.cloudflare.com

  1. services:
  2. powerdns:
  3. image: pschiffe/pdns-mysql
  4. container_name: powerdns
  5. restart: always
  6. networks:
  7. - 1panel-network
  8. ports:
  9. - "53:53"
  10. - "53:53/udp"
  11. - "8081:8081"
  12. environment:
  13. PDNS_gmysql_host: "your-mysql-container-name"
  14. PDNS_gmysql_port: "3306"
  15. PDNS_gmysql_user: "your-db-username"
  16. PDNS_gmysql_password: "your-db-password"
  17. PDNS_gmysql_dbname: "your-db-name"
  18. PDNS_primary: "yes"
  19. PDNS_webserver: "yes"
  20. PDNS_api: "yes"
  21. PDNS_api_key: "your-api-key"
  22. PDNS_webserver-allow-from: "0.0.0.0/0"
  23. PDNS_webserver_address: "0.0.0.0"
  24. PDNS_webserver_password: "your-webserver-password"
  25. PDNS_version_string: "anonymous"
  26. PDNS_default_ttl: "300"
  27. PDNS_allow_notify_from: "0.0.0.0"
  28. PDNS_allow_axfr_ips: "127.0.0.1"
  29. PDNS_default_soa_content: "ns1.yourdomain.xyz hostmaster.@ 0 10800 3600 604800 3600"

  30. powerdns-admin:
  31. image: powerdnsadmin/pda-legacy:latest
  32. container_name: powerdns-admin
  33. restart: always
  34. networks:
  35. - 1panel-network
  36. ports:
  37. - "127.0.0.1:9191:80"
  38. environment:
  39. SQLALCHEMY_DATABASE_URI: "mysql://your-db-username:your-db-password@your-mysql-container-name:3306/your-db-name"
  40. PDNS_API_URL: "http://powerdns:8081"
  41. PDNS_API_KEY: "your-api-key"
  42. PDNS_VERSION: "4.9.2"
  43. GUNICORN_TIMEOUT: "60"
  44. GUNICORN_WORKERS: "5"

  45. networks:
  46. 1panel-network:
  47. external: true
复制代码



上面的yml基于1panel网络,没有1panel面板让gpt帮你去掉网络就好

注意2处的your-api-key需要保持一致,自己生成就好

搭建完成反代一下127.0.0.1:9191就可以访问了,注册第一个账号就是管理员

域名方面,在注册商那里找到胶水记录,设置2条ns1.yourdomain.xyz和ns2.yourdomain.xyz指向你服务器ip,然后把你的域名ns记录改为ns1.yourdomain.xyz和ns2.yourdomain.xyz

现在可以登录你搭建的面板了,左侧Create Zone,然后Zone Name输入你的域名,最后点击域名进去设置2个ns记录。@ ns ns1.yourdomain.xyz,@ ns ns2.yourdomain.xyz

现在你可以继续添加A记录了,就跟其他地方一样

回复

使用道具 举报

31

主题

3711

回帖

9341

积分

论坛元老

Rank: 8Rank: 8

积分
9341
发表于 2025-2-9 21:32:02 | 显示全部楼层
MySQL 是什么?
回复

使用道具 举报

119

主题

2372

回帖

5615

积分

论坛元老

Rank: 8Rank: 8

积分
5615
 楼主| 发表于 2025-2-9 21:34:36 | 显示全部楼层
iks 发表于 2025-2-9 21:32
MySQL 是什么?

数据库。都需要改的哈。样板是示例,简单的东西自己改就行。重点的2处api 一致我已经说了
回复

使用道具 举报

50

主题

1673

回帖

4488

积分

论坛元老

Rank: 8Rank: 8

积分
4488
发表于 2025-2-9 21:32:00 | 显示全部楼层
国内域名厂家基本不支持设置胶水记录。
自己找个机器搞,稳定性就不说了。延迟也会有问题。

折腾一下还行。常用就算了。
回复

使用道具 举报

119

主题

2372

回帖

5615

积分

论坛元老

Rank: 8Rank: 8

积分
5615
 楼主| 发表于 2025-2-9 21:35:29 | 显示全部楼层
万亩斜阳 发表于 2025-2-9 21:35
国内域名厂家基本不支持设置胶水记录。
自己找个机器搞,稳定性就不说了。延迟也会有问题。

一般人确实没必要。对于响应速度有极致追求的大佬才会自己建ns。
回复

使用道具 举报

102

主题

2909

回帖

8018

积分

论坛元老

Rank: 8Rank: 8

积分
8018
发表于 2025-2-9 21:42:16 | 显示全部楼层
没什么必要吧,一般访问一次后都会有缓存了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2025-5-20 04:29 , Processed in 0.068256 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表