Files
rtomik-helm-charts/charts/adguard-home/NOTES.txt
2026-09-15 11:37:19 +02:00

56 lines
3.1 KiB
Plaintext

1. Get the admin dashboard URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range $host := .Values.ingress.hosts }}
{{- range .paths }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }}
{{- end }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[?(@.name=='web')].nodePort}" services {{ include "adguard-home.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "adguard-home.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "adguard-home.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.ports.web.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "adguard-home.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use the AdGuard Home setup wizard / dashboard"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:{{ .Values.ports.web.port }}
{{- end }}
2. On first access, complete the AdGuard Home setup wizard (admin user, DNS listener
interfaces/ports). The resulting AdGuardHome.yaml is written to the conf volume.
3. DNS listens on port {{ .Values.ports.dns.port }} (TCP/UDP).
{{- if not .Values.hostNetwork }}
NOTE: hostNetwork is disabled, so clients will see the Service/pod IP, not their
real IP, in the AdGuard Home query log/filters. Set hostNetwork: true, or use a
LoadBalancer Service with externalTrafficPolicy: Local, to preserve client IPs.
{{- end }}
{{- if .Values.ports.dhcp.enabled }}
4. DHCP server is enabled on UDP 67/68.
{{- if not .Values.hostNetwork }}
WARNING: DHCP requires hostNetwork: true to function correctly - it will not
work through a ClusterIP/LoadBalancer Service.
{{- end }}
{{- end }}
{{- if or .Values.persistence.work.enabled .Values.persistence.conf.enabled }}
5. Data is persisted using PVCs:
{{- if .Values.persistence.work.enabled }}
- {{ .Values.persistence.work.existingClaim | default (printf "%s-work" (include "adguard-home.fullname" .)) }} (query log, filter cache, stats)
{{- end }}
{{- if .Values.persistence.conf.enabled }}
- {{ .Values.persistence.conf.existingClaim | default (printf "%s-conf" (include "adguard-home.fullname" .)) }} (AdGuardHome.yaml)
{{- end }}
{{- else }}
5. WARNING: No persistence enabled. Configuration and filter data will be lost when
the pod restarts.
{{- end }}
For more information about using this Helm chart, please refer to the readme.md file.