#!/bin/sh set -eu NGINX_CONTAINER="${NGINX_CONTAINER:-lendry-id-nginx}" GATEWAY_CONTAINER="${GATEWAY_CONTAINER:-lendry-id-api-gateway}" BOOT_WAIT_SEC="${BOOT_WAIT_SEC:-55}" reload_nginx() { if docker exec "$NGINX_CONTAINER" nginx -s reload 2>/dev/null; then echo "[nginx-gateway-sync] nginx reload OK" else echo "[nginx-gateway-sync] nginx reload failed — пробуем restart" docker restart "$NGINX_CONTAINER" >/dev/null 2>&1 || true fi } verify_gateway() { docker exec "$NGINX_CONTAINER" wget -qO- --timeout=5 "http://${GATEWAY_CONTAINER}:3000/health" 2>/dev/null \ || echo "[nginx-gateway-sync] предупреждение: nginx пока не достучался до ${GATEWAY_CONTAINER}:3000/health" } echo "[nginx-gateway-sync] слежение за ${GATEWAY_CONTAINER} (boot wait ${BOOT_WAIT_SEC}s)..." docker events \ --filter "container=${GATEWAY_CONTAINER}" \ --filter event=start \ --format '{{.Time}}' | while read -r _; do echo "[nginx-gateway-sync] ${GATEWAY_CONTAINER} перезапущен, ждём Nest..." sleep "$BOOT_WAIT_SEC" reload_nginx sleep 2 verify_gateway done