apiVersion: apps/v1 kind: Deployment metadata: name: ntfy spec: selector: matchLabels: app: ntfy template: metadata: labels: app: ntfy spec: containers: - name: ntfy image: binwiederhier/ntfy args: ["serve"] resources: limits: memory: "128Mi" cpu: "500m" ports: - containerPort: 80 name: http volumeMounts: - name: config mountPath: "/etc/ntfy" readOnly: true volumes: - name: config configMap: name: ntfy --- apiVersion: v1 kind: Service metadata: name: ntfy spec: selector: app: ntfy ports: - port: 80 targetPort: 80 --- apiVersion: v1 kind: ConfigMap metadata: name: ntfy data: server.yml: | # Template: https://github.com/binwiederhier/ntfy/blob/main/server/server.yml base-url: https://ntfy.gmem.ca behind-proxy: true upstream-base-url: "https://ntfy.sh" --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ntfy annotations: cert-manager.io/issuer: "le-issuer" namespace: default spec: tls: - hosts: - ntfy.gmem.ca secretName: gmem-ca-wildcard rules: - host: ntfy.gmem.ca http: paths: - path: / pathType: Prefix backend: service: name: ntfy port: number: 80