template.yaml 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. ---
  2. kind: compose
  3. metadata:
  4. name: AdGuard Home
  5. description: |-
  6. Network-wide software for blocking ads and tracking. AdGuard Home operates as a DNS server that
  7. re-routes tracking domains to a "black hole", thus preventing your devices from connecting to those servers.
  8. It features advanced DNS filtering, parental controls, safe browsing, and HTTPS/DNS-over-TLS/DNS-over-QUIC support.
  9. ## Prerequisites
  10. - :info: During the initial setup, AdGuard Home runs an HTTP server on port 3000 to guide you through configuration.
  11. **With Traefik enabled:** Access initial setup via container IP at `http://<container-ip>:3000`.
  12. After setup completes, access the admin interface via the configured domain.
  13. - :warning: **Security Notice:** The initial setup on port 3000 uses an unencrypted HTTP connection.
  14. Only use this for initial configuration and disable it (`initial_setup=false`) after setup is complete.
  15. - :warning: If you require DHCP functionality or want AdGuard Home to bind directly to port 53,
  16. you must set `network_mode` to `host` or `macvlan`. Note this exposes all container ports directly on the host.
  17. You can't use `traefik_enabled` in this case!
  18. ## References
  19. - **Project:** https://adguard.com/adguard-home/overview.html
  20. - **Documentation:** https://github.com/AdguardTeam/AdGuardHome/wiki
  21. - **GitHub:** https://github.com/AdguardTeam/AdGuardHome
  22. icon:
  23. provider: selfh
  24. id: adguard-home
  25. version: v0.107.71
  26. author: Christian Lempa
  27. date: '2025-12-11'
  28. tags:
  29. - traefik
  30. - network
  31. - volume
  32. next_steps:
  33. schema: "1.2"
  34. spec:
  35. general:
  36. vars:
  37. service_name:
  38. default: adguardhome
  39. initial_setup:
  40. description: Enable initial setup wizard on port 3000 (only used without Traefik)
  41. type: bool
  42. default: true
  43. extra: >
  44. Port 3000 is only used during the initial setup wizard when Traefik is disabled.
  45. With Traefik enabled, access setup via container IP instead.
  46. After completing setup, AdGuard Home switches to port 80 and port 3000 becomes inactive.
  47. traefik:
  48. vars:
  49. traefik_host:
  50. default: adguardhome
  51. network:
  52. vars:
  53. network_mode:
  54. extra: >
  55. Use 'host' mode if you need DHCP functionality or want AdGuard Home to bind directly to port 53.
  56. network_name:
  57. default: adguardhome_network
  58. ports:
  59. vars:
  60. ports_http:
  61. default: 80
  62. ports_https:
  63. default: 443
  64. ports_initial:
  65. description: Initial setup wizard port (only when Traefik is disabled)
  66. type: int
  67. default: 3000
  68. needs: ["traefik_enabled=false", "initial_setup=true"]
  69. extra: >
  70. Only used during first-time setup without Traefik. After configuration, port becomes inactive.
  71. With Traefik, access setup via container IP instead.
  72. ports_tls:
  73. description: DNS over TLS Port
  74. type: int
  75. default: 853
  76. required: true
  77. ports_dnscrypt:
  78. description: DNSCrypt Port
  79. type: int
  80. default: 5443
  81. required: true