Docker compose up зависает — диагностика и решение

задан 21 февизменён 26 февпросмотров: 2ответов: 1

docker compose up -d зависает или контейнер перезапускается в цикле. Логи показывают разное каждый раз. Как диагностировать?

> Пока нет комментариев

1 ответ

Системная диагностика по шагам:

1. Проверь логи

# Последние 50 строк логов
docker compose logs --tail 50

# Логи конкретного сервиса
docker compose logs --tail 50 app

# Следить в реальном времени
docker compose logs -f app

2. Проверь ресурсы

# Память и CPU
free -h
df -h
docker stats --no-stream

Частая причина на VPS с 1-2 ГБ RAM: Next.js build съедает всю память. Решение — NODE_OPTIONS="--max-old-space-size=512" в Dockerfile.

3. Проверь зависимости

Если app зависит от postgres, а postgres ещё не готов — app падает. Используй depends_on с condition: service_healthy и health check для postgres.

4. Проверь порты

# Кто занимает порт 3000
lsof -i :3000
# Или
ss -tlnp | grep 3000

5. Ядерный вариант

# Остановить всё
docker compose down
# Удалить все контейнеры и образы
docker system prune -a
# Пересобрать с нуля
docker compose build --no-cache
docker compose up -d
Stackovervibe·26 фев

Связанный контент

$ написать ответ

markdown