template.yaml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. ---
  2. kind: compose
  3. metadata:
  4. name: BIND9
  5. description: >
  6. BIND9 is the most widely used DNS server on the Internet.
  7. This template provides an authoritative and recursive DNS server with example zones,
  8. TSIG authentication for secure zone transfers, and DNSSEC support.
  9. Project: https://www.isc.org/bind/
  10. Documentation: https://bind9.readthedocs.io/
  11. version: 9.20-24.10_edge
  12. author: Christian Lempa
  13. date: '2025-10-02'
  14. tags:
  15. - bind9
  16. - dns
  17. - nameserver
  18. - authoritative
  19. - recursive
  20. next_steps: |
  21. 1. Start the DNS server:
  22. docker compose up -d
  23. 2. View the auto-generated TSIG key:
  24. cat config/tsig.key
  25. 3. Test DNS queries:
  26. dig @localhost home.arpa
  27. 4. Customize your zone:
  28. - Edit config/named.conf.zones to add more zones
  29. - Add zone files to /var/lib/bind/ volume
  30. - Update config/named.conf to adjust forwarders and ACLs
  31. 5. Reload configuration after changes:
  32. docker exec bind9 rndc reload
  33. 6. Check BIND9 configuration syntax:
  34. docker exec bind9 named-checkconf /etc/bind/named.conf
  35. docker exec bind9 named-checkzone home.arpa /var/lib/bind/db.home.arpa
  36. For more information, visit: https://bind9.readthedocs.io/
  37. draft: true
  38. spec:
  39. general:
  40. vars:
  41. bind9_version:
  42. type: str
  43. description: BIND9 Docker image tag
  44. default: "9.20-24.10_edge"
  45. domain_name:
  46. type: str
  47. description: "Primary domain name for your zone (e.g., home.arpa)"
  48. default: "home.arpa"
  49. tsig_key_name:
  50. type: str
  51. description: "TSIG key name for secure zone transfers"
  52. default: "transfer-key"
  53. tsig_key_secret:
  54. type: str
  55. description: "TSIG key secret (base64, auto-generated if empty)"
  56. default: ""
  57. sensitive: true
  58. autogenerated: true
  59. ports:
  60. vars:
  61. ports_enabled:
  62. default: true
  63. network:
  64. vars:
  65. network_enabled:
  66. default: false