Files
homelab/nextcloud/k8s/routing/ingress.yaml
T
forust ef325cd3b1
ci / lint-prettier (push) Successful in 3s
ci / lint-ruff (push) Successful in 1s
ci / lint-yaml (push) Successful in 2s
ci / lint-dockerfiles (push) Successful in 1s
ci / validate (push) Successful in 2s
ci / build (push) Skipped
ci / deploy-userbot-panel (push) Skipped
feat(tls): migrate public ingress TLS from Traefik ACME to cert-manager
All prod IngressRoutes switch tls.certResolver to tls.secretName
backed by per-router Certificates (HTTP-01, letsencrypt-prod).
adguard-prod reuses the shared adguard-certs secret (also feeds
DoT :853); sync CronJob removed as redundant.

Traefik certificatesResolvers removed: its internal
acme-http@internal router hijacks HTTP-01 for every host while
enabled, blocking external solvers. Dormant files (kener,
downtify) converted for consistency but not applied; n8n
untouched per live-only rule.
2026-09-23 14:12:36 +02:00

78 lines
1.7 KiB
YAML

# Nextcloud
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: nextcloud-prod
namespace: nextcloud
spec:
entryPoints:
- websecure
routes:
- match: Host(`nextcloud.forust.xyz`)
kind: Rule
middlewares:
- name: nextcloud-chain@file
- name: crowdsec-bouncer
namespace: crowdsec
services:
- name: nextcloud-apache
port: 11000
tls:
secretName: nextcloud-prod-tls
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: nextcloud-local
namespace: nextcloud
spec:
entryPoints:
- websecure
routes:
- match: Host(`nextcloud.workstation.internal`) || Host(`nextcloud.gigaforust.internal`)
kind: Rule
middlewares:
- name: crowdsec-bouncer
namespace: crowdsec
- name: nextcloud-chain@file
services:
- name: nextcloud-apache
port: 11000
# ---
# Nextcloud AIO
# apiVersion: traefik.io/v1alpha1
# kind: IngressRoute
# metadata:
# name: naio-prod
# namespace: nextcloud
# spec:
# entryPoints:
# - websecure
# routes:
# - match: Host(`naio.forust.xyz`)
# kind: Rule
# services:
# - name: nextcloud-aio
# port: 8888
# scheme: https
# serversTransport: insecure-transport
# tls:
# certResolver: letsencrypt
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: naio-local
namespace: nextcloud
spec:
entryPoints:
- websecure
routes:
- match: Host(`naio.workstation.internal`) || Host(`naio.gigaforust.internal`)
kind: Rule
services:
- name: nextcloud-aio
port: 8888
scheme: https
serversTransport: insecure-transport