Files
k8s-manifests/cloudflare-ddns/deployment-cloudflare-ddns.yaml
T
chemavxandClaude Opus 4.8 9bcb84ebc8 fix(cloudflare-ddns): add theexclusionzone.com zone with per-domain PROXIED
The theexclusionzone.com (Ghost EN) zone was never in DOMAINS, so favonia
never updated its origin A records. When the ISP rotated the public IP, the
EN records went stale and Cloudflare returned 522 (apex+www are proxied).

Add all three EN records to DOMAINS and use favonia 1.16.2's per-domain
PROXIED expression so apex+www stay orange while the wildcard and the
chemavx/zona zones stay grey, all from one DDNS instance.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 07:01:23 +00:00

71 lines
2.7 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: '1'
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"cloudflare-ddns","namespace":"cloudflare-ddns"},"spec":{"replicas":1,"selector":{"matchLabels":{"app":"cloudflare-ddns"}},"template":{"metadata":{"labels":{"app":"cloudflare-ddns"}},"spec":{"containers":[{"env":[{"name":"CF_API_TOKEN","valueFrom":{"secretKeyRef":{"key":"CF_API_TOKEN","name":"cloudflare-ddns-secret"}}},{"name":"DOMAINS","value":"chemavx.xyz,*.chemavx.xyz"},{"name":"PROXIED","value":"false"},{"name":"UPDATE_CRON","value":"@every
5m"},{"name":"IP4_PROVIDER","value":"cloudflare.trace"}],"image":"favonia/cloudflare-ddns:latest","name":"cloudflare-ddns","resources":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"10m","memory":"32Mi"}},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":true,"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000}}]}}}}
'
name: cloudflare-ddns
namespace: cloudflare-ddns
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: cloudflare-ddns
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
labels:
app: cloudflare-ddns
spec:
containers:
- env:
- name: CF_API_TOKEN
valueFrom:
secretKeyRef:
key: CF_API_TOKEN
name: cloudflare-ddns-secret-infisical
- name: DOMAINS
value: chemavx.xyz,*.chemavx.xyz,zonadeexclusion.com,*.zonadeexclusion.com,theexclusionzone.com,www.theexclusionzone.com,*.theexclusionzone.com
- name: PROXIED
value: is(theexclusionzone.com,www.theexclusionzone.com)
- name: UPDATE_CRON
value: '@every 5m'
- name: IP4_PROVIDER
value: cloudflare.trace
image: favonia/cloudflare-ddns:1.16.2
imagePullPolicy: Always
name: cloudflare-ddns
resources:
limits:
cpu: 50m
memory: 64Mi
requests:
cpu: 10m
memory: 32Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsGroup: 1000
runAsNonRoot: true
runAsUser: 1000
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30