fix: post-check через pg_isready и curl на хосте
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -30,25 +30,46 @@ run_go_check() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
load_env() {
|
||||||
|
if [ -f .env ]; then
|
||||||
|
set -a
|
||||||
|
# shellcheck disable=SC1091
|
||||||
|
. ./.env
|
||||||
|
set +a
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
post_start_check() {
|
post_start_check() {
|
||||||
echo "=== Проверка после запуска ==="
|
echo "=== Проверка после запуска ==="
|
||||||
|
load_env
|
||||||
host_docker_check
|
host_docker_check
|
||||||
echo ""
|
echo ""
|
||||||
if docker compose ps 2>/dev/null | grep -qE 'shop-app|running'; then
|
|
||||||
if docker compose exec -T app wget -qO- http://127.0.0.1:8080/health 2>/dev/null; then
|
if docker compose ps postgres 2>/dev/null | grep -qi running; then
|
||||||
echo ""
|
if docker compose exec -T postgres pg_isready -U "${POSTGRES_USER:-shop}" -d "${POSTGRES_DB:-shopdb}" >/dev/null 2>&1; then
|
||||||
echo " ✓ app /health: OK"
|
echo " ✓ postgresql: готова"
|
||||||
fi
|
|
||||||
elif command -v curl >/dev/null 2>&1; then
|
|
||||||
if curl -sf "http://127.0.0.1:${HTTP_PORT:-80}/health" 2>/dev/null; then
|
|
||||||
echo ""
|
|
||||||
echo " ✓ /health: OK"
|
|
||||||
else
|
else
|
||||||
echo " ✗ /health: сервис не отвечает — проверьте: docker compose ps"
|
echo " ✗ postgresql: не отвечает"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
echo " ✗ postgres: контейнер не запущен — docker compose up -d"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
CHECK_SKIP_DB=0 CHECK_HOST_TOOLS=1 run_go_check
|
|
||||||
|
if command -v curl >/dev/null 2>&1; then
|
||||||
|
if curl -sf "http://127.0.0.1:${HTTP_PORT:-80}/health" >/dev/null 2>&1; then
|
||||||
|
echo " ✓ /health: OK"
|
||||||
|
else
|
||||||
|
echo " ✗ /health: не отвечает — docker compose logs app caddy"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
elif docker compose exec -T app wget -qO- http://127.0.0.1:8080/health >/dev/null 2>&1; then
|
||||||
|
echo " ✓ app /health: OK"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
CHECK_SKIP_DB=1 CHECK_HOST_TOOLS=1 run_go_check
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$MODE" in
|
case "$MODE" in
|
||||||
|
|||||||
Reference in New Issue
Block a user