Files
xiaoxia-saas/infra/scripts/server-web-diag.sh
T
xiaoxia-agent 3e7273b8cd
Debug: Web container crash diag / Web Crash Diagnostics (push) Successful in 49s
debug(web): deeper diag of nginx entrypoint crash
2026-09-11 10:12:15 +08:00

40 lines
1.6 KiB
Bash

#!/bin/bash
set +e
echo "=== web images present ==="
docker images | grep -E "xiaoxia.*web" | head
echo ""
echo "=== check nginx base default.conf ==="
BASE_IMG="git.xiaoxiajianji.com/xiaoxia/base/nginx:alpine"
CID=$(docker create "$BASE_IMG" /bin/sh)
echo "ephemeral cid=$CID"
echo "--- conf.d contents ---"
docker start "$CID" 2>/dev/null
docker exec "$CID" ls -la /etc/nginx/conf.d/ 2>&1
echo "--- default.conf type ---"
docker exec "$CID" file /etc/nginx/conf.d/default.conf 2>&1
docker exec "$CID" stat /etc/nginx/conf.d/default.conf 2>&1
echo ""
echo "=== test ln -sf on existing file ==="
docker exec "$CID" sh -c "ln -sf /etc/nginx/nginx.conf /etc/nginx/conf.d/default.conf && echo ln_ok && ls -la /etc/nginx/conf.d/default.conf"
docker rm -f "$CID" 2>/dev/null
echo ""
echo "=== check staging web image default.conf ==="
STAGING_WEB=$(docker inspect xiaoxia-web-staging --format '{{.Config.Image}}' 2>/dev/null)
echo "Staging web image: $STAGING_WEB"
CID2=$(docker create "$STAGING_WEB" /bin/sh)
echo "ephemeral cid=$CID2"
echo "--- conf.d in built image (before entrypoint) ---"
docker start "$CID2" 2>/dev/null || echo "(could not start, try without starting)"
docker exec "$CID2" ls -la /etc/nginx/conf.d/ 2>&1
echo "--- default.conf content head ---"
docker exec "$CID2" head -5 /etc/nginx/conf.d/default.conf 2>&1
docker exec "$CID2" file /etc/nginx/conf.d/default.conf 2>&1
echo "--- docker-entrypoint.sh content ---"
docker exec "$CID2" cat /docker-entrypoint.sh 2>&1
echo ""
echo "=== try running entrypoint manually ==="
docker exec -e APP_ENV=staging "$CID2" sh -x /docker-entrypoint.sh 2>&1 | head -30
docker rm -f "$CID2" 2>/dev/null
echo ""
echo "=== Done ==="