Skip to content

Commit 6153e01

Browse files
committed
chore(ci): 部署失败时打印容器日志,便于远程 debug
健康检查超时后打印 docker logs + compose ps + inspect state, 避免每次 deploy 失败都要 ssh 上机器看日志。
1 parent 8efae54 commit 6153e01

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

.github/workflows/deploy.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,17 @@ jobs:
5555
sleep 5
5656
done
5757
58-
# 健康检查超时,用备份镜像回滚
58+
# 健康检查失败:先把新容器的日志打印出来,方便在 GitHub Actions 日志里定位问题
59+
echo "========== 新容器 docker logs(最近 300 行) =========="
60+
docker logs --tail=300 involution-hell-backend 2>&1 || true
61+
echo "========== docker compose ps =========="
62+
docker compose ps 2>&1 || true
63+
echo "========== 容器 inspect(State + ExitCode) =========="
64+
docker inspect --format='State: {{.State.Status}} ExitCode: {{.State.ExitCode}} Error: {{.State.Error}}' involution-hell-backend 2>&1 || true
65+
echo "========== 最后的 restart 原因 =========="
66+
docker inspect involution-hell-backend 2>&1 | grep -A3 'RestartCount\|OOMKilled\|Error' | head -20 || true
67+
68+
# 用备份镜像回滚
5969
echo "❌ 健康检查失败,正在回滚到上一个版本..."
6070
docker tag involutionhell-backend:rollback involutionhell-backend:latest
6171
docker compose up -d --remove-orphans

0 commit comments

Comments
 (0)