# https://github.com/cloudflare/argo-tunnel-examples/blob/master/named-tunnel-k8s/cloudflared.yaml --- apiVersion: apps/v1 kind: Deployment metadata: name: cloudflared namespace: kube-system spec: selector: matchLabels: app: cloudflared replicas: 3 template: metadata: labels: app: cloudflared spec: containers: - name: cloudflared image: cloudflare/cloudflared:2023.8.2 args: - tunnel - --config - /etc/cloudflared/config/config.yaml - run ports: - containerPort: 2000 name: metrics livenessProbe: httpGet: path: /ready port: 2000 failureThreshold: 1 initialDelaySeconds: 10 periodSeconds: 10 volumeMounts: - name: config mountPath: /etc/cloudflared/config readOnly: true - name: creds mountPath: /etc/cloudflared/creds readOnly: true volumes: - name: creds secret: secretName: tunnel-credentials - name: config configMap: name: cloudflared items: - key: config.yaml path: config.yaml --- apiVersion: v1 kind: ConfigMap metadata: name: cloudflared namespace: kube-system data: config.yaml: | tunnel: example-tunnel credentials-file: /etc/cloudflared/creds/credentials.json metrics: 0.0.0.0:2000 ingress: - hostname: gogs.jibby.org service: http://gogs-service.gogs.svc.cluster.local:3000 #- hostname: matrix.jibby.org # service: http://matrix-service.matrix.svc.cluster.local:8008 - hostname: miniflux.jibby.org service: http://miniflux-service.miniflux.svc.cluster.local:8080 - hostname: vaultwarden.jibby.org service: http://vaultwarden-service.vaultwarden.svc.cluster.local:80 - hostname: vaultwarden.jibby.org path: /notifications/hub.* service: http://vaultwarden-service.vaultwarden.svc.cluster.local:3012 - hostname: homeassistant.jibby.org service: http://homeassistant-service.homeassistant.svc.cluster.local:8123 - hostname: ntfy.jibby.org service: http://ntfy-service.ntfy.svc.cluster.local:80 # - hostname: mastodon.jibby.org # service: http://mastodon-service.mastodon.svc.cluster.local:3000 # - hostname: streaming-mastodon.jibby.org # service: http://mastodon-service.mastodon.svc.cluster.local:4000 - service: http_status:404