uploader-bot/fix_docker_container.sh

81 lines
3.1 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
echo "🔧 Исправление Docker контейнера MY Network..."
# Переход в папку с проектом
cd "$(dirname "$0")"
echo "📁 Текущая папка: $(pwd)"
# Остановка и удаление старых контейнеров
echo "🛑 Остановка старых контейнеров..."
sudo docker-compose -f deployment/docker-compose.production.yml down || true
# Очистка старых образов
echo "🧹 Очистка старых образов..."
sudo docker system prune -f
# Показать содержимое .env для проверки
echo "📋 Проверка переменных окружения:"
echo "Основные переменные из .env:"
grep -E "^(POSTGRES_PASSWORD|SECRET_KEY|JWT_SECRET|MY_NETWORK_)" .env | head -5
# Проверка файлов
echo "📂 Проверка ключевых файлов:"
if [ -f "start_my_network.py" ]; then
echo "✅ start_my_network.py найден"
else
echo "❌ start_my_network.py НЕ НАЙДЕН!"
fi
if [ -f "deployment/Dockerfile.simple" ]; then
echo "✅ deployment/Dockerfile.simple найден"
else
echo "❌ deployment/Dockerfile.simple НЕ НАЙДЕН!"
fi
if [ -f ".env" ]; then
echo "✅ .env найден"
else
echo "❌ .env НЕ НАЙДЕН!"
fi
# Сборка контейнера только для app сервиса
echo "🔨 Сборка нового контейнера..."
sudo docker-compose -f deployment/docker-compose.production.yml build app
# Проверка сборки
if [ $? -eq 0 ]; then
echo "✅ Сборка контейнера успешна"
# Запуск только основных сервисов (без мониторинга)
echo "🚀 Запуск основных сервисов..."
sudo docker-compose -f deployment/docker-compose.production.yml up -d postgres redis app
# Проверка статуса
echo "📊 Статус контейнеров:"
sudo docker-compose -f deployment/docker-compose.production.yml ps
# Проверка логов app контейнера
echo "📝 Логи app контейнера (последние 20 строк):"
sudo docker-compose -f deployment/docker-compose.production.yml logs --tail=20 app
# Проверка доступности
echo "🌐 Проверка доступности (через 10 секунд)..."
sleep 10
if curl -f http://localhost:15100/health > /dev/null 2>&1; then
echo "✅ Сервис доступен на http://localhost:15100"
echo "🎉 ИСПРАВЛЕНИЕ ЗАВЕРШЕНО УСПЕШНО!"
echo ""
echo "Теперь выполните: sudo ./setup_ssl_for_domain.sh"
else
echo "❌ Сервис НЕ ДОСТУПЕН на порту 15100"
echo "📝 Показываем полные логи для диагностики:"
sudo docker-compose -f deployment/docker-compose.production.yml logs app
fi
else
echo "❌ Ошибка сборки контейнера"
exit 1
fi