infra/homelab/ntfy.yaml

81 lines
1.5 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: ntfy
namespace: 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
namespace: ntfy
spec:
selector:
app: ntfy
ports:
- port: 80
targetPort: 80
---
apiVersion: v1
kind: ConfigMap
metadata:
name: ntfy
namespace: 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/cluster-issuer: "le-issuer"
namespace: ntfy
spec:
tls:
- hosts:
- ntfy.gmem.ca
rules:
- host: ntfy.gmem.ca
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ntfy
port:
number: 80