From 1d89961c5f82bca020a00581695036aab0aca63f Mon Sep 17 00:00:00 2001 From: hyxklee Date: Wed, 1 Apr 2026 15:43:01 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EB=8F=84=EB=A9=94=EC=9D=B8=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=EC=9D=B4=20=EB=B3=80=EA=B2=BD=EB=90=9C=20=EA=B2=BD?= =?UTF-8?q?=EC=9A=B0=20=EB=B0=94=EB=A1=9C=20=EB=B0=98=EC=98=81=20=EB=90=98?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EB=A1=9C=EC=A7=81=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infra/dev/scripts/deploy.sh | 9 +++++++-- infra/prod/scripts/deploy.sh | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/infra/dev/scripts/deploy.sh b/infra/dev/scripts/deploy.sh index bef723d8..9ed3c0c9 100755 --- a/infra/dev/scripts/deploy.sh +++ b/infra/dev/scripts/deploy.sh @@ -48,8 +48,13 @@ done echo "reverse_proxy weeth-dev-app-${NEW_COLOR}:8080" > ./caddy/upstream.conf -# Caddy가 실행 중이면 reload, 아니면 시작 -if docker compose ps caddy --format '{{.State}}' 2>/dev/null | grep -q running; then +# 현재 Caddy 컨테이너의 DOMAIN과 비교하여 변경 시에만 재생성 +CURRENT_DOMAIN=$(docker inspect weeth-dev-caddy --format '{{range .Config.Env}}{{println .}}{{end}}' 2>/dev/null | grep '^DOMAIN=' | cut -d= -f2-) + +if [ "$CURRENT_DOMAIN" != "$DOMAIN" ]; then + echo "[deploy] domain changed, recreating caddy" + docker compose up -d --force-recreate caddy +elif docker compose ps caddy --format '{{.State}}' 2>/dev/null | grep -q running; then docker compose exec caddy caddy reload --config /etc/caddy/Caddyfile else docker compose up -d caddy diff --git a/infra/prod/scripts/deploy.sh b/infra/prod/scripts/deploy.sh index 2033b362..5e9b4bc9 100755 --- a/infra/prod/scripts/deploy.sh +++ b/infra/prod/scripts/deploy.sh @@ -48,8 +48,13 @@ done echo "reverse_proxy weeth-prod-app-${NEW_COLOR}:8080" > ./caddy/upstream.conf -# Caddy가 실행 중이면 reload, 아니면 시작 -if docker compose ps caddy --format '{{.State}}' 2>/dev/null | grep -q running; then +# 현재 Caddy 컨테이너의 DOMAIN과 비교하여 변경 시에만 재생성 +CURRENT_DOMAIN=$(docker inspect weeth-prod-caddy --format '{{range .Config.Env}}{{println .}}{{end}}' 2>/dev/null | grep '^DOMAIN=' | cut -d= -f2-) + +if [ "$CURRENT_DOMAIN" != "$DOMAIN" ]; then + echo "[deploy] domain changed, recreating caddy" + docker compose up -d --force-recreate caddy +elif docker compose ps caddy --format '{{.State}}' 2>/dev/null | grep -q running; then docker compose exec caddy caddy reload --config /etc/caddy/Caddyfile else docker compose up -d caddy