2
0
Fork 0
backend/traefik.toml

182 lines
5.3 KiB
TOML

[api]
dashboard = true
[acme]
email = "letsencrypt+local@beepvoice.app"
caServer = "https://acme-v02.api.letsencrypt.org/directory"
acmeLogging = true
storage = "acme.json"
entryPoint = "https"
[acme.dnsChallenge]
provider = "digitalocean"
delayBeforeCheck = 3
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.auth.forward]
address = "http://auth:10205/auth"
trustForwardHeader = true
authResponseHeaders = [ "X-User-Claim" ]
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[entryPoints.https.auth.forward]
address = "http://auth:10205/auth"
trustForwardHeader = true
authResponseHeaders = [ "X-User-Claim" ]
[entryPoints.login]
address = ":1837"
[entryPoints.login_https]
address = ":1838"
[entryPoints.login_https.tls]
[entryPoints.traefik]
address = ":8080"
[file]
# Core
[backends.core]
[backends.core.servers.one]
url = "http://core"
[frontends.core]
backend = "core"
entrypoints = ["http", "https"]
[frontends.core.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.core.routes.one]
rule = "PathPrefixStrip: /core/"
# Signal
[backends.signal]
[backends.signal.servers.one]
url = "http://signal"
[frontends.signal]
backend = "signal"
entrypoints = ["http", "https"]
[frontends.signal.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.signal.routes.one]
rule = "PathPrefixStrip: /signal/"
# Heartbeat
[backends.heartbeat]
[backends.heartbeat.servers.one]
url = "http://heartbeat"
[frontends.heartbeat]
backend = "heartbeat"
entrypoints = ["http", "https"]
[frontends.heartbeat.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.heartbeat.routes.one]
rule = "PathPrefixStrip: /heartbeat/"
# Bite
[backends.bite]
[backends.bite.servers.one]
url = "http://bite"
[frontends.bite]
backend = "bite"
entrypoints = ["http", "https"]
[frontends.bite.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.bite.routes.one]
rule = "PathPrefixStrip: /bite/"
# Publish
[backends.publish]
[backends.publish.servers.one]
url = "http://publish"
[frontends.publish]
backend = "publish"
entrypoints = ["http", "https"]
[frontends.publish.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.publish.routes.one]
rule = "PathPrefixStrip: /publish/"
# Subscribe
[backends.subscribe]
[backends.subscribe.servers.one]
url = "http://subscribe"
[frontends.subscribe]
backend = "subscribe"
entrypoints = ["http", "https"]
[frontends.subscribe.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.subscribe.routes.one]
rule = "PathPrefixStrip: /subscribe/"
# pictures
[backends.pictures]
[backends.pictures.servers.one]
url = "http://pictures"
[frontends.pictures]
backend = "pictures"
entrypoints = ["http", "https"]
[frontends.pictures.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.pictures.routes.one]
rule = "PathPrefixStrip: /pictures/"
# webrtc
[backends.webrtc]
[backends.webrtc.servers.one]
url = "http://webrtc"
[frontends.webrtc.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization, X-User-Claim"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.webrtc.routes.one]
rule = "PathPrefixStrip: /webrtc/"
[frontends.webrtc]
backend = "webrtc"
entrypoints = ["http", "https"]
# login
[backends.login]
[backends.login.servers.one]
url = "http://login"
[frontends.login]
backend = "login"
entrypoints = ["login", "login_https"]
[frontends.login.headers.customresponseheaders]
Access-Control-Allow-Origin = "*"
Access-Control-Allow-Headers = "Content-Type, Authorization"
Access-Control-Allow-Credentials = "true"
Access-Control-Allow-Methods = "GET, HEAD, POST, PUT, PATCH, DELETE"
[frontends.login.routes.one]
rule = "PathPrefixStrip: /"