apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Release.Name }} labels: app.kubernetes.io/name: {{ .Chart.Name }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} app.kubernetes.io/component: dns-server app.kubernetes.io/part-of: network-services spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: {{ .Release.Name }} template: metadata: labels: app: {{ .Release.Name }} spec: containers: - name: {{ .Chart.Name }} image: "{{ .Values.image.repository }}:v{{ .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} ports: - name: dns-tcp containerPort: 53 protocol: TCP - name: dns-udp containerPort: 53 protocol: UDP - name: http containerPort: 80 protocol: TCP - name: https containerPort: 443 protocol: TCP - name: admin containerPort: 3000 protocol: TCP env: - name: TZ value: {{ .Values.timezone | quote }} resources: {{- toYaml .Values.resources | nindent 12 }} volumeMounts: - name: data mountPath: /opt/adguardhome volumes: - name: data persistentVolumeClaim: claimName: {{ .Values.persistence.existingClaim | default (printf "%s-data" .Release.Name) }}