diff --git a/docker/compose.ory.yaml b/docker/compose.ory.yaml index 797993fa..a91a6038 100644 --- a/docker/compose.ory.yaml +++ b/docker/compose.ory.yaml @@ -108,7 +108,11 @@ services: ports: - "4455:4455" # Proxy - "4456:4456" # API (Backend 헬스체크용) - + healthcheck: + test: ["CMD", "wget", "-qO-", "http://127.0.0.1:4456/health/ready"] + interval: 5s + timeout: 5s + retries: 5 volumes: ory_postgres_data: diff --git a/docker/docker-compose.staging.template.yaml b/docker/docker-compose.staging.template.yaml index 9ec87368..a5057122 100644 --- a/docker/docker-compose.staging.template.yaml +++ b/docker/docker-compose.staging.template.yaml @@ -23,6 +23,8 @@ services: - HYDRA_ADMIN_URL="${HYDRA_ADMIN_URL:-http://ory_hydra:4445}" - HYDRA_PUBLIC_URL="${HYDRA_PUBLIC_URL:-http://ory_hydra:4444}" - PROFILE_CACHE_TTL="${PROFILE_CACHE_TTL:-30m}" + # Oathkeeper URL이 필요하다면 명시 (일반적으로 내부 DNS 사용시 불필요하나 확실히 하기 위해) + - OATHKEEPER_API_URL=http://ory_oathkeeper:4456 ports: - "${BACKEND_PORT:-3000}:3000" depends_on: @@ -31,12 +33,14 @@ services: networks: - baron_net - ory-net + + # [수정됨] Healthcheck 시간을 넉넉하게 늘림 healthcheck: test: ["CMD", "wget", "-qO-", "http://127.0.0.1:3000/health"] interval: 10s timeout: 5s - retries: 3 - start_period: 10s + retries: 10 # 3회 -> 10회 (최대 10번 재시도) + start_period: 60s # 10초 -> 60초 (처음 1분간은 실패해도 봐줌) adminfront: image: ${ADMINFRONT_IMAGE_NAME}:${IMAGE_TAG} @@ -89,12 +93,13 @@ services: echo \"APP_ENV=stage\" >> /usr/share/nginx/html/assets/.env && cp /usr/share/nginx/html/assets/.env /usr/share/nginx/html/.env && nginx -g 'daemon off;'" + # [수정됨] Userfront도 넉넉하게 설정 healthcheck: test: ["CMD", "wget", "-qO-", "http://127.0.0.1:5000/"] interval: 10s timeout: 5s - retries: 3 - start_period: 10s + retries: 5 + start_period: 30s infra_check: image: alpine