🔧 Исправлена поддержка Docker Compose v2
Some checks failed
continuous-integration/drone/push Build is failing

 Fixes:
- Добавлена поддержка Docker Compose v2 (docker compose)
- Автоматическое определение версии Docker Compose в Makefile
- Обновлены скрипты master-deploy.sh и pre-deploy-check.sh
- Добавлена утилита detect-docker-compose.sh
- Исправлены команды в функции setup_database

🔧 Изменения:
- Makefile: улучшенное определение команды Docker Compose
- master-deploy.sh: использует make команды вместо прямых вызовов
- pre-deploy-check.sh: проверка обеих версий Docker Compose
- Добавлена команда shell-exec в Makefile

Теперь скрипт корректно работает с Docker Compose v2 на современных системах.
This commit is contained in:
2025-11-04 20:12:09 +09:00
parent e1bb1ab90a
commit 280a6c4ad0
4 changed files with 109 additions and 17 deletions

View File

@@ -100,11 +100,22 @@ if command -v docker >/dev/null 2>&1; then
fi
# Проверка Docker Compose
check_and_report "command -v docker-compose >/dev/null 2>&1" "Docker Compose установлен"
# Проверка Docker Compose
echo ""
info "Проверка Docker Compose..."
# Проверяем Docker Compose v1 или v2
if command -v docker-compose >/dev/null 2>&1; then
COMPOSE_VERSION=$(docker-compose --version | cut -d' ' -f3 | cut -d',' -f1)
echo " Версия Docker Compose: $COMPOSE_VERSION"
echo " Версия Docker Compose v1: $COMPOSE_VERSION"
success "Docker Compose v1 установлен"
elif docker compose version >/dev/null 2>&1; then
COMPOSE_VERSION=$(docker compose version --short 2>/dev/null || docker compose version | head -1 | cut -d' ' -f4)
echo " Версия Docker Compose v2: $COMPOSE_VERSION"
success "Docker Compose v2 установлен"
else
error "Docker Compose не установлен"
((ERRORS++))
fi
# Проверка портов