server/traefik.yml
2025-02-08 15:21:55 +01:00

74 lines
1.4 KiB
YAML

entryPoints:
web:
address: ":80"
http:
redirections:
entryPoint:
to: "websecure"
scheme: "https"
websecure:
address: ":443"
providers:
docker:
endpoint: "unix:///var/run/docker.sock"
exposedByDefault: false
certificatesResolvers:
le:
acme:
email: "your-email@example.com"
storage: "/data/acme.json"
tlsChallenge: {}
api:
dashboard: true
ping:
entryPoint: "websecure"
http:
routers:
api:
rule: "PathPrefix(`/api`)"
service: "api"
entryPoints: ["websecure"]
app:
rule: "Host(`${HOST}`)"
entryPoints: ["websecure"]
service: "app"
tls:
certResolver: "le"
middlewares:
- "websocket"
services:
api:
loadBalancer:
servers:
- url: "http://app:${PORT}"
app:
loadBalancer:
sticky: true
servers:
- url: "http://app:${PORT}"
middlewares:
websocket:
headers:
accessControlAllowHeaders:
- "Origin"
- "Content-Type"
- "Accept"
- "Authorization"
accessControlAllowMethods:
- "GET"
- "POST"
- "PUT"
- "DELETE"
- "PATCH"
- "OPTIONS"
accessControlAllowOrigin: ["*"]
accessControlExposeHeaders:
- "Content-Length"
- "Content-Range"