Укрепление эксплуатации: healthcheck'и, лимиты ресурсов, логи, self-hosted шрифты, smoke-проверка в CI
Deploy / deploy (push) Failing after 0s

This commit is contained in:
2026-11-10 00:59:14 +05:00
parent 6746d89233
commit c47391b6db
32 changed files with 375 additions and 18 deletions
+24 -1
View File
@@ -29,4 +29,27 @@ jobs:
run: |
docker compose -f docker-compose.prod.yml build
docker compose -f docker-compose.prod.yml up -d
docker image prune -f
# Если сборка/подъём упали — шаг упадёт, а старые контейнеры продолжат
# работать (up -d не выполнился). Проверяем, что новое поднялось по
# healthcheck'ам обоих сервисов, и что nginx реально отдаёт главную.
- name: Smoke check
working-directory: /data/docker/compose/cactoz
run: |
n=starting
g=starting
for i in $(seq 1 30); do
n=$(docker inspect -f '{{.State.Health.Status}}' cactoz-nginx 2>/dev/null || echo starting)
g_id=$(docker compose -f docker-compose.prod.yml ps -q gameserver)
g=$([ -n "$g_id" ] && docker inspect -f '{{.State.Health.Status}}' "$g_id" 2>/dev/null || echo starting)
if [ "$n" = "healthy" ] && [ "$g" = "healthy" ]; then break; fi
sleep 3
done
docker compose -f docker-compose.prod.yml ps
[ "$n" = "healthy" ]
[ "$g" = "healthy" ]
docker exec cactoz-nginx wget -qO /dev/null http://127.0.0.1/
- name: Prune dangling images
working-directory: /data/docker/compose/cactoz
run: docker image prune -f