Major changes: - Add Go backend (backend/) with microservices architecture - Enhanced master-agents-svc: reranker, content-classifier, stealth-crawler, proxy-manager, media-search, fastClassifier, language detection - New web-svc widgets: KnowledgeCard, ProductCard, ProfileCard, VideoCard, UnifiedCard, CardGallery, InlineImageGallery, SourcesPanel, RelatedQuestions - Improved discover-svc with discover-db integration - Docker deployment improvements (Caddyfile, vendor.sh, BUILD.md) - Library-svc: project_id schema migration - Remove deprecated finance-svc and travel-svc - Localization improvements across services Made-with: Cursor
8.8 KiB
Результаты тестирования https://gooseek.ru/
Дата: 27 февраля 2026, 02:40 МСК
❌ Основная проблема
Сайт https://gooseek.ru/ НЕДОСТУПЕН
$ curl https://gooseek.ru/
curl: (7) Failed to connect to gooseek.ru port 443: Couldn't connect to server
Причины
1. Reverse-proxy (Caddy) не запущен
Файл deploy/docker/docker-compose.yml содержит конфигурацию для Caddy, который должен:
- Слушать порты 80/443
- Автоматически получать SSL от Let's Encrypt
- Проксировать
gooseek.ru→web-svc:3000
Но этот контейнер НЕ ЗАПУЩЕН.
2. Запущена неправильная конфигурация
Сейчас работают контейнеры из /backend/deploy/docker/docker-compose.yml (Go backend):
$ docker ps
NAME STATUS
docker-api-gateway-1 Up 21 minutes (unhealthy)
docker-chat-svc-1 Up 21 minutes (unhealthy)
docker-agent-svc-1 Up 21 minutes (unhealthy)
docker-webui-1 Up 20 minutes
docker-llm-svc-1 Up 21 minutes (unhealthy)
docker-search-svc-1 Up 21 minutes (unhealthy)
docker-scraper-svc-1 Up 21 minutes (unhealthy)
...
Все сервисы помечены как "unhealthy", кроме базовых (postgres, redis, crawl4ai).
3. Chat API не работает
Тест 1: Прямой доступ к API Gateway
$ curl http://localhost:3015/health
curl: (7) Connection refused
Результат: API Gateway недоступен на localhost, хотя порт должен быть проброшен.
Тест 2: Через WebUI
$ curl http://localhost:3000
✅ OK - WebUI возвращает HTML
$ curl -X POST http://localhost:3000/api/chat \
-H "Content-Type: application/json" \
-d '{
"message": {
"messageId": "msg-123",
"chatId": "chat-123",
"content": "Привет, как дела?"
},
"optimizationMode": "balanced",
"history": [],
"locale": "ru"
}'
Internal Server Error
Результат: WebUI работает, но chat API возвращает ошибку.
Причина: WebUI пытается проксировать запрос на api-gateway:3015 (через Next.js rewrites), но API Gateway недоступен или не отвечает.
Что работает ✅
- WebUI доступен локально -
http://localhost:3000возвращает интерфейс - Docker контейнеры запущены - все сервисы работают (но unhealthy)
- Базовые сервисы здоровы:
- ✅ postgres (healthy)
- ✅ redis (healthy)
- ✅ crawl4ai (healthy)
- ✅ searxng (running)
Что НЕ работает ❌
- Reverse-proxy (Caddy) - не запущен
- API Gateway - unhealthy, порт 3015 недоступен
- Chat сервис - unhealthy
- Agent сервис - unhealthy
- LLM сервис - unhealthy
- Search сервис - unhealthy
- Все остальные backend Go сервисы - unhealthy
Диагностика
Проверка портов
$ lsof -nP -iTCP -sTCP:LISTEN | grep -E "3000|3015|3005"
node 31314 home 16u IPv6 *:3000 (LISTEN)
Только порт 3000 (webui) слушает. Порты 3015 (api-gateway) и 3005 (chat-svc) не доступны на хосте.
Архитектура
Текущая конфигурация:
[Browser]
↓
❌ gooseek.ru:443 (Caddy не запущен)
↓
✅ localhost:3000 (WebUI - Next.js)
↓ (Next.js rewrites /api/* → api-gateway:3015)
❌ api-gateway:3015 (unhealthy, недоступен)
↓
❌ chat-svc:3005 (unhealthy)
↓
❌ agent-svc:3018 (unhealthy)
Рекомендации по исправлению
1. Запустить правильный docker-compose
cd /Users/home/Desktop/GooSeek/deploy/docker
./run.sh
Это должно запустить полный стек включая reverse-proxy.
2. Проверить логи unhealthy контейнеров
docker logs docker-api-gateway-1 --tail 100
docker logs docker-chat-svc-1 --tail 100
docker logs docker-agent-svc-1 --tail 100
docker logs docker-llm-svc-1 --tail 100
Искать ошибки:
- Отсутствующие переменные окружения
- Проблемы с подключением к зависимостям
- Ошибки при старте сервиса
3. Проверить переменные окружения
Убедиться что .env файл существует и содержит:
# LLM API Keys
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GEMINI_API_KEY=...
TIMEWEB_API_KEY=...
TIMEWEB_AGENT_ACCESS_ID=...
TIMEWEB_API_BASE_URL=...
# Ghost CMS
GHOST_CONTENT_API_KEY=...
GHOST_DB_PASSWORD=...
GHOST_MAIL_USER=...
GHOST_MAIL_PASSWORD=...
4. Проверить healthcheck'и
Каждый сервис имеет healthcheck. Например, для api-gateway:
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:3015/health"]
interval: 15s
timeout: 5s
retries: 3
start_period: 10s
Если сервис не отвечает на /health в течение 10s после старта → unhealthy.
Возможные причины unhealthy:
- Сервис не стартует из-за ошибки
- Сервис стартует медленно (нужно увеличить
start_period) - Зависимости недоступны (другие сервисы)
- Отсутствуют переменные окружения
5. Проверить сеть Docker
docker network ls
docker network inspect gooseek
Убедиться что все контейнеры в одной сети и могут общаться.
6. Проверить DNS и порты
# DNS
nslookup gooseek.ru
# Порты на роутере
# Убедиться что 80 и 443 проброшены на ПК
7. Перезапустить с нуля
# Остановить все
cd /Users/home/Desktop/GooSeek/backend/deploy/docker
docker compose down
# Запустить правильный compose
cd /Users/home/Desktop/GooSeek/deploy/docker
docker compose down
docker compose up -d
# Проверить логи
docker compose logs -f reverse-proxy
docker compose logs -f web-svc
docker compose logs -f api-gateway
Тестовые скрипты
Созданы скрипты для тестирования:
- test-chat.sh - базовая проверка сервисов
- test-chat-proper.sh - тест с правильным payload
- test-chat-via-webui.sh - тест через webui
Использование:
cd /Users/home/Desktop/GooSeek
./test-chat-via-webui.sh
Скриншоты и ошибки
Консоль браузера (ожидаемые ошибки)
Если открыть https://gooseek.ru/ в браузере:
- Network: ERR_CONNECTION_REFUSED или ERR_NAME_NOT_RESOLVED
- Console: Нет ошибок (страница не загружается)
Если открыть http://localhost:3000/ в браузере:
- Network: ✅ 200 OK для главной страницы
- Network: ❌ 500 Internal Server Error для
/api/chat - Console: Ошибка при попытке отправить сообщение
Пример ошибки в консоли (если бы сайт был доступен)
POST http://localhost:3000/api/chat 500 (Internal Server Error)
Error: Chat request failed: 500
at streamChat (api.ts:43)
at sendMessage (useChat.ts:53)
Итоговый вывод
Сайт https://gooseek.ru/ полностью недоступен.
Причины:
- ❌ Reverse-proxy (Caddy) не запущен → нет HTTPS доступа
- ❌ API Gateway unhealthy → chat не работает даже локально
- ❌ Все backend сервисы unhealthy → нет функциональности
Что нужно сделать:
- Запустить правильный docker-compose с reverse-proxy
- Исправить проблемы с unhealthy контейнерами (проверить логи)
- Убедиться что все переменные окружения настроены
- Проверить DNS и проброс портов
Приоритет: КРИТИЧЕСКИЙ - сайт полностью не работает.