diff --git a/deploy/traefik/dynamic.yml b/deploy/traefik/dynamic.yml index 3a166df..772561b 100644 --- a/deploy/traefik/dynamic.yml +++ b/deploy/traefik/dynamic.yml @@ -4,7 +4,10 @@ http: rule: "PathPrefix(`/deploy`)" entryPoints: - web + - websecure service: webhook + tls: + certResolver: letsencrypt services: webhook: diff --git a/deploy/traefik/traefik.yml b/deploy/traefik/traefik.yml index 855efd4..2c0f5e4 100644 --- a/deploy/traefik/traefik.yml +++ b/deploy/traefik/traefik.yml @@ -4,6 +4,11 @@ api: entryPoints: web: address: ":80" + http: + redirections: + entryPoint: + to: websecure + scheme: https websecure: address: ":443" @@ -14,11 +19,10 @@ providers: filename: /etc/traefik/dynamic.yml watch: true -# 도메인 준비되면 주석 해제 -# certificatesResolvers: -# letsencrypt: -# acme: -# email: your-email@example.com -# storage: /letsencrypt/acme.json -# httpChallenge: -# entryPoint: web +certificatesResolvers: + letsencrypt: + acme: + email: greeneon@naver.com + storage: /letsencrypt/acme.json + httpChallenge: + entryPoint: web diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 5c6a07b..459b3a8 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -67,8 +67,9 @@ services: NODE_ENV: production labels: - "traefik.enable=true" - - "traefik.http.routers.web.rule=PathPrefix(`/`)" - - "traefik.http.routers.web.entrypoints=web" + - "traefik.http.routers.web.rule=Host(`startover.co.kr`) && PathPrefix(`/`)" + - "traefik.http.routers.web.entrypoints=websecure" + - "traefik.http.routers.web.tls.certresolver=letsencrypt" - "traefik.http.routers.web.priority=1" - "traefik.http.services.web.loadbalancer.server.port=3000" depends_on: @@ -92,8 +93,9 @@ services: NODE_ENV: production labels: - "traefik.enable=true" - - "traefik.http.routers.admin.rule=PathPrefix(`/admin`)" - - "traefik.http.routers.admin.entrypoints=web" + - "traefik.http.routers.admin.rule=Host(`startover.co.kr`) && PathPrefix(`/admin`)" + - "traefik.http.routers.admin.entrypoints=websecure" + - "traefik.http.routers.admin.tls.certresolver=letsencrypt" - "traefik.http.routers.admin.middlewares=admin-strip" - "traefik.http.middlewares.admin-strip.stripprefix.prefixes=/admin" - "traefik.http.services.admin.loadbalancer.server.port=3000"