76 lines
2.6 KiB
Bash
76 lines
2.6 KiB
Bash
#!/bin/bash
|
||
|
||
# Проверка статуса приложения и настройка домена
|
||
echo "🔍 ДИАГНОСТИКА ПРИЛОЖЕНИЯ И ДОМЕНА"
|
||
|
||
DOMAIN="my-public-node-3.projscale.dev"
|
||
|
||
echo ""
|
||
echo "=== 1. СТАТУС КОНТЕЙНЕРОВ ==="
|
||
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
|
||
|
||
echo ""
|
||
echo "=== 2. ПРОВЕРКА ПОРТОВ ПРИЛОЖЕНИЯ ==="
|
||
for port in 3000 5000; do
|
||
if timeout 5 curl -s http://localhost:$port/api/health > /dev/null 2>&1; then
|
||
echo "✅ Port $port: РАБОТАЕТ"
|
||
else
|
||
echo "❌ Port $port: НЕ РАБОТАЕТ"
|
||
fi
|
||
done
|
||
|
||
echo ""
|
||
echo "=== 3. ЛОГИ ПРИЛОЖЕНИЯ ==="
|
||
APP_CONTAINER=$(docker ps --format "{{.Names}}" | grep -E "(app|uploader)" | head -1)
|
||
if [ -n "$APP_CONTAINER" ]; then
|
||
echo "📄 Логи $APP_CONTAINER (последние 10 строк):"
|
||
docker logs --tail=10 "$APP_CONTAINER" 2>&1
|
||
else
|
||
echo "❌ Контейнер приложения не найден"
|
||
fi
|
||
|
||
echo ""
|
||
echo "=== 4. ПРОВЕРКА NGINX ДЛЯ ДОМЕНА ==="
|
||
echo "🌐 Домен: $DOMAIN"
|
||
|
||
# Проверка текущей конфигурации nginx
|
||
echo "Текущая конфигурация server_name:"
|
||
sudo grep -E "server_name|listen" /etc/nginx/sites-enabled/default
|
||
|
||
echo ""
|
||
echo "=== 5. ТЕСТ СОЕДИНЕНИЯ ПО ДОМЕНУ ==="
|
||
|
||
# HTTP тест
|
||
if timeout 10 curl -I http://$DOMAIN/health 2>/dev/null | head -1; then
|
||
echo "✅ HTTP работает"
|
||
else
|
||
echo "❌ HTTP не работает"
|
||
fi
|
||
|
||
# HTTPS тест
|
||
if timeout 10 curl -k -I https://$DOMAIN/health 2>/dev/null | head -1; then
|
||
echo "✅ HTTPS работает"
|
||
else
|
||
echo "❌ HTTPS не работает (SSL не настроен)"
|
||
fi
|
||
|
||
echo ""
|
||
echo "=== 6. РЕКОМЕНДАЦИИ ==="
|
||
|
||
# Проверка что приложение работает
|
||
LOCAL_WORKS=$(curl -s --max-time 5 http://localhost:3000/api/health > /dev/null 2>&1 && echo "yes" || echo "no")
|
||
|
||
if [ "$LOCAL_WORKS" = "yes" ]; then
|
||
echo "✅ Приложение работает локально"
|
||
echo "🔧 Нужно настроить SSL для домена $DOMAIN"
|
||
echo ""
|
||
echo "Выполните:"
|
||
echo "sudo ./setup_ssl_for_domain.sh"
|
||
else
|
||
echo "❌ Приложение не работает локально"
|
||
echo "🔧 Сначала нужно исправить приложение"
|
||
echo ""
|
||
echo "Выполните:"
|
||
echo "docker-compose -f deployment/docker-compose.production.yml restart app"
|
||
echo "docker logs \$(docker ps --format \"{{.Names}}\" | grep app | head -1)"
|
||
fi |