#!/usr/bin/env bash set -u for i in $(seq 0 39); do status=$(docker ps -a --filter name=qwen38-vllm --format '{{.Status}}') listening=$(ss -ltnp | grep -c ':8002 ' || true) if curl -fsS --max-time 5 http://127.0.0.1:8002/health >/tmp/qwen38-health.out 2>/tmp/qwen38-health.err; then echo "HEALTHY poll=$i status=$status listening=$listening" docker logs --tail 60 qwen38-vllm exit 0 fi if [[ $status != Up* ]]; then echo "NOT_RUNNING poll=$i status=$status listening=$listening" docker logs --tail 160 qwen38-vllm exit 2 fi echo "poll=$i status=$status listening=$listening" docker logs --tail 10 qwen38-vllm sleep 30 done echo "TIMEOUT" docker logs --tail 200 qwen38-vllm exit 1