#!/usr/bin/env bash # Запуск GooSeek в Docker (без Kubernetes) # Сервисы из deploy/k3s/deploy.config.yaml (true) # # Использование: # ./deploy/docker/run.sh # полный build + up # ./deploy/docker/run.sh --web # только web-svc (кнопки, UI) — быстро # ./deploy/docker/run.sh --up # только up (без build) # ./deploy/docker/run.sh --down # остановить # # BuildKit + --no-cache: при деплое старый кэш не используется, сборка всегда свежая set -e export DOCKER_BUILDKIT=1 SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" COMPOSE_FILE="$SCRIPT_DIR/docker-compose.yml" cd "$REPO_ROOT" case "${1:-}" in --web) docker compose -f "$COMPOSE_FILE" build --no-cache web-svc docker compose -f "$COMPOSE_FILE" up -d --force-recreate web-svc reverse-proxy echo "" echo "web-svc пересобран и перезапущен. Обнови страницу (Ctrl+Shift+R)." ;; --down) docker compose -f "$COMPOSE_FILE" down echo "Остановлено." ;; --up) docker compose -f "$COMPOSE_FILE" up -d echo "" echo "Сервисы запущены:" echo " web-svc: http://localhost:3000" echo " api-gateway: http://localhost:3015" echo " auth-svc: http://localhost:3014" echo " llm-svc: http://localhost:3020" echo " chat-svc: http://localhost:3005" echo " master-agents: http://localhost:3018" echo " search-svc: http://localhost:3001" ;; *) docker compose -f "$COMPOSE_FILE" build --no-cache docker compose -f "$COMPOSE_FILE" up -d --force-recreate echo "" echo "Сервисы запущены:" echo " web-svc: http://localhost:3000" echo " api-gateway: http://localhost:3015" echo " auth-svc: http://localhost:3014" echo " llm-svc: http://localhost:3020" echo " chat-svc: http://localhost:3005" echo " master-agents: http://localhost:3018" echo " search-svc: http://localhost:3001" echo " redis: localhost:6379" echo "" echo "LLM: настройте .env (LLM_PROVIDER=timeweb или ollama)." ;; esac