@@ -6,6 +6,7 @@ services:
66 context : ./frontend
77 labels :
88 - " org.pseudolab.project=cert"
9+ - " org.pseudolab.env=${ENVIRONMENT:-dev}"
910 restart : unless-stopped
1011 env_file :
1112 - .env
@@ -19,17 +20,17 @@ services:
1920 - traefik.docker.network=traefik
2021
2122 # --- Traefik Router (frontend) ---
22- - traefik.http.routers.cert-web.rule=Host(`${APP_HOST}`)
23- - traefik.http.routers.cert-web.entrypoints=websecure
24- - traefik.http.routers.cert-web.tls=true
25- - traefik.http.routers.cert-web.tls.certresolver=le
26- - traefik.http.services.cert-web.loadbalancer.server.port=80
23+ - traefik.http.routers.cert-${ENVIRONMENT}- web.rule=Host(`${APP_HOST}`)
24+ - traefik.http.routers.cert-${ENVIRONMENT}- web.entrypoints=websecure
25+ - traefik.http.routers.cert-${ENVIRONMENT}- web.tls=true
26+ - traefik.http.routers.cert-${ENVIRONMENT}- web.tls.certresolver=le
27+ - traefik.http.services.cert-${ENVIRONMENT}- web.loadbalancer.server.port=80
2728
2829 # HTTP → HTTPS 리다이렉트 (frontend)
29- - traefik.http.routers.cert-web-http.rule=Host(`${APP_HOST}`)
30- - traefik.http.routers.cert-web-http.entrypoints=web
31- - traefik.http.routers.cert-web-http.middlewares=redirect-to-https@file
32- - traefik.http.routers.cert-web-http.service=cert-web
30+ - traefik.http.routers.cert-${ENVIRONMENT}- web-http.rule=Host(`${APP_HOST}`)
31+ - traefik.http.routers.cert-${ENVIRONMENT}- web-http.entrypoints=web
32+ - traefik.http.routers.cert-${ENVIRONMENT}- web-http.middlewares=redirect-to-https@file
33+ - traefik.http.routers.cert-${ENVIRONMENT}- web-http.service=cert-${ENVIRONMENT} -web
3334
3435 backend :
3536 build :
@@ -57,17 +58,17 @@ services:
5758 - traefik.docker.network=traefik
5859
5960 # --- Traefik Router (backend) ---
60- - traefik.http.routers.cert-api.rule=Host(`${APP_HOST}`) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`) || PathPrefix(`/health`) || Path(`/openapi.json`))
61- - traefik.http.routers.cert-api.entrypoints=websecure
62- - traefik.http.routers.cert-api.tls=true
63- - traefik.http.routers.cert-api.tls.certresolver=le
64- - traefik.http.services.cert-api.loadbalancer.server.port=8000
61+ - traefik.http.routers.cert-${ENVIRONMENT}- api.rule=Host(`${APP_HOST}`) && (PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`) || PathPrefix(`/health`) || Path(`/openapi.json`))
62+ - traefik.http.routers.cert-${ENVIRONMENT}- api.entrypoints=websecure
63+ - traefik.http.routers.cert-${ENVIRONMENT}- api.tls=true
64+ - traefik.http.routers.cert-${ENVIRONMENT}- api.tls.certresolver=le
65+ - traefik.http.services.cert-${ENVIRONMENT}- api.loadbalancer.server.port=8000
6566
6667 # HTTP → HTTPS 리다이렉트 (backend)
67- - traefik.http.routers.cert-api-http.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`)
68- - traefik.http.routers.cert-api-http.entrypoints=web
69- - traefik.http.routers.cert-api-http.middlewares=redirect-to-https@file
70- - traefik.http.routers.cert-api-http.service=cert-api
68+ - traefik.http.routers.cert-${ENVIRONMENT}- api-http.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`)
69+ - traefik.http.routers.cert-${ENVIRONMENT}- api-http.entrypoints=web
70+ - traefik.http.routers.cert-${ENVIRONMENT}- api-http.middlewares=redirect-to-https@file
71+ - traefik.http.routers.cert-${ENVIRONMENT}- api-http.service=cert-${ENVIRONMENT} -api
7172
7273networks :
7374 traefik :
0 commit comments