158 lines
3.0 KiB
YAML
158 lines
3.0 KiB
YAML
# Headscale main
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-prod
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.forust.xyz`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 8080
|
|
tls:
|
|
certResolver: letsencrypt
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-local
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.workstation.internal`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 8080
|
|
tls:
|
|
secretName: local-tls
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-dev
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.gigaforust.internal`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 8080
|
|
tls:
|
|
secretName: local-tls
|
|
---
|
|
# Headscale metrics
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-metrics-prod
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.forust.xyz`) && PathPrefix(`/metrics`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 9090
|
|
tls:
|
|
certResolver: letsencrypt
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-metrics-local
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.workstation.internal`) && PathPrefix(`/metrics`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 9090
|
|
tls:
|
|
secretName: local-tls
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-metrics-dev
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.gigaforust.internal`) && PathPrefix(`/metrics`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-service
|
|
port: 9090
|
|
tls:
|
|
secretName: local-tls
|
|
---
|
|
# Headscale admin UI
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-admin-prod
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.forust.xyz`) && PathPrefix(`/admin`)
|
|
kind: Rule
|
|
middlewares:
|
|
- name: security-chain@file
|
|
services:
|
|
- name: headscale-admin-service
|
|
port: 80
|
|
tls:
|
|
certResolver: letsencrypt
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-admin-local
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.workstation.internal`) && PathPrefix(`/admin`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-admin-service
|
|
port: 80
|
|
tls:
|
|
secretName: local-tls
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: headscale-admin-dev
|
|
namespace: headscale
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
routes:
|
|
- match: Host(`hs.gigaforust.internal`) && PathPrefix(`/admin`)
|
|
kind: Rule
|
|
services:
|
|
- name: headscale-admin-service
|
|
port: 80
|
|
tls:
|
|
secretName: local-tls
|