|
|
@ -88,22 +88,16 @@ services: |
|
|
|
|
|
|
|
- traefik.http.services.${STACK_NAME?Variable not set}-backend.loadbalancer.server.port=80 |
|
|
|
|
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.rule=(Host(`${DOMAIN?Variable not set}`) || Host(`www.${DOMAIN?Variable not set}`)) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`)) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.rule=Host(`${DOMAIN?Variable not set}`) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`)) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.entrypoints=http |
|
|
|
|
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.rule=(Host(`${DOMAIN?Variable not set}`) || Host(`www.${DOMAIN?Variable not set}`)) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`)) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.rule=Host(`${DOMAIN?Variable not set}`) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`)) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.entrypoints=https |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.tls=true |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.tls.certresolver=le |
|
|
|
|
|
|
|
# Define Traefik Middleware to handle domain with and without "www" to redirect to only one |
|
|
|
- traefik.http.middlewares.${STACK_NAME?Variable not set}-www-redirect.redirectregex.regex=^http(s)?://www.(${DOMAIN?Variable not set})/(.*) |
|
|
|
# Redirect a domain with www to non-www |
|
|
|
- traefik.http.middlewares.${STACK_NAME?Variable not set}-www-redirect.redirectregex.replacement=http$${1}://${DOMAIN?Variable not set}/$${3} |
|
|
|
|
|
|
|
# Enable www redirection for HTTP and HTTPS |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.middlewares=https-redirect,${STACK_NAME?Variable not set}-www-redirect |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-https.middlewares=${STACK_NAME?Variable not set}-www-redirect |
|
|
|
# Enable redirection for HTTP and HTTPS |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.middlewares=https-redirect |
|
|
|
|
|
|
|
frontend: |
|
|
|
image: '${DOCKER_IMAGE_FRONTEND?Variable not set}:${TAG-latest}' |
|
|
@ -123,17 +117,16 @@ services: |
|
|
|
|
|
|
|
- traefik.http.services.${STACK_NAME?Variable not set}-frontend.loadbalancer.server.port=80 |
|
|
|
|
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.rule=Host(`${DOMAIN?Variable not set}`) || Host(`www.${DOMAIN?Variable not set}`) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.rule=Host(`${DOMAIN?Variable not set}`) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.entrypoints=http |
|
|
|
|
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.rule=Host(`${DOMAIN?Variable not set}`) || Host(`www.${DOMAIN?Variable not set}`) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.rule=Host(`${DOMAIN?Variable not set}`) |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.entrypoints=https |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.tls=true |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.tls.certresolver=le |
|
|
|
|
|
|
|
# Enable www redirection for HTTP and HTTPS |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-https.middlewares=${STACK_NAME?Variable not set}-www-redirect |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.middlewares=https-redirect,${STACK_NAME?Variable not set}-www-redirect |
|
|
|
# Enable redirection for HTTP and HTTPS |
|
|
|
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.middlewares=https-redirect |
|
|
|
volumes: |
|
|
|
app-db-data: |
|
|
|
|
|
|
|