feat: Go backend, enhanced search, new widgets, Docker deploy
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
This commit is contained in:
163
.env.example
163
.env.example
@@ -1,23 +1,148 @@
|
||||
# Конфиг для Kubernetes. Переменные задаются в ConfigMap/Secret (deploy/k3s).
|
||||
# См. deploy/k3s/CONFIG.md
|
||||
# ============================================
|
||||
# GooSeek — Environment Variables
|
||||
# ============================================
|
||||
# Конфиг для Docker/Kubernetes.
|
||||
# Копировать в .env и заполнить значения.
|
||||
|
||||
# === LLM (llm-svc-config ConfigMap, llm-credentials Secret) ===
|
||||
# LLM_PROVIDER=ollama | timeweb
|
||||
# OLLAMA_BASE_URL=http://host.docker.internal:11434 # Docker Desktop
|
||||
# OPENAI_API_KEY= # Secret llm-credentials
|
||||
# TIMEWEB_AGENT_ACCESS_ID= # Secret
|
||||
# TIMEWEB_API_KEY= # Secret
|
||||
# ============================================
|
||||
# === БАЗА ДАННЫХ (ОБЯЗАТЕЛЬНО) ===
|
||||
# ============================================
|
||||
|
||||
# === Auth (auth-svc.yaml env) ===
|
||||
# BETTER_AUTH_URL=http://app.gooseek.local # local
|
||||
# BETTER_AUTH_URL=https://gooseek.ru # production
|
||||
# TRUSTED_ORIGINS=...
|
||||
DATABASE_URL=postgres://gooseek:password@postgres:5432/gooseek?sslmode=disable
|
||||
REDIS_URL=redis://redis:6379
|
||||
|
||||
# === API Gateway (api-gateway.yaml env) ===
|
||||
# ALLOWED_ORIGINS=http://app.gooseek.local # local
|
||||
# ALLOWED_ORIGINS=https://gooseek.ru,... # production
|
||||
# ============================================
|
||||
# === LLM ПРОВАЙДЕРЫ (минимум один обязателен) ===
|
||||
# ============================================
|
||||
|
||||
# === Secrets (kubectl create secret) ===
|
||||
# db-credentials: postgresql://user:pass@host:5432/gooseek
|
||||
# yookassa-credentials: shop_id, secret
|
||||
# llm-credentials: openai-api-key, timeweb-agent-access-id, timeweb-api-key
|
||||
# OpenAI (GPT-4o, GPT-4o-mini)
|
||||
OPENAI_API_KEY=sk-xxx
|
||||
|
||||
# Anthropic (Claude 3 Opus, Claude 3.5 Sonnet) — для reasoning/coding
|
||||
ANTHROPIC_API_KEY=sk-ant-xxx
|
||||
|
||||
# Google Gemini (Gemini 1.5 Pro, Flash) — для long context/research
|
||||
GEMINI_API_KEY=xxx
|
||||
|
||||
# Timeweb Cloud AI (альтернатива)
|
||||
# LLM_PROVIDER=timeweb
|
||||
# TIMEWEB_API_BASE_URL=https://api.timeweb.cloud
|
||||
# TIMEWEB_AGENT_ACCESS_ID=xxx
|
||||
# TIMEWEB_API_KEY=xxx
|
||||
|
||||
# Ollama (локальная модель)
|
||||
# LLM_PROVIDER=ollama
|
||||
# OLLAMA_BASE_URL=http://host.docker.internal:11434
|
||||
# LLM_CHAT_MODEL=llama3
|
||||
|
||||
# Модели по умолчанию
|
||||
DEFAULT_LLM_PROVIDER=openai
|
||||
DEFAULT_LLM_MODEL=gpt-4o-mini
|
||||
|
||||
# ============================================
|
||||
# === АУТЕНТИФИКАЦИЯ ===
|
||||
# ============================================
|
||||
|
||||
JWT_SECRET=your-secret-key-change-in-production
|
||||
BETTER_AUTH_URL=https://gooseek.ru
|
||||
AUTH_SVC_URL=http://auth-svc:3010
|
||||
|
||||
# ============================================
|
||||
# === СЕРВИСЫ (внутренние URL) ===
|
||||
# ============================================
|
||||
|
||||
# API Gateway
|
||||
API_GATEWAY_URL=http://api-gateway:3015
|
||||
API_GATEWAY_PORT=3015
|
||||
ALLOWED_ORIGINS=https://gooseek.ru,http://localhost:3000
|
||||
|
||||
# Core Services
|
||||
CHAT_SVC_URL=http://chat-svc:3005
|
||||
MASTER_AGENTS_SVC_URL=http://agent-svc:3018
|
||||
SEARCH_SVC_URL=http://search-svc:3001
|
||||
LLM_SVC_URL=http://llm-svc:3020
|
||||
SCRAPER_SVC_URL=http://scraper-svc:3021
|
||||
DISCOVER_SVC_URL=http://discover-svc:3002
|
||||
COLLECTION_SVC_URL=http://collection-svc:3025
|
||||
FILE_SVC_URL=http://file-svc:3026
|
||||
THREAD_SVC_URL=http://thread-svc:3027
|
||||
COMPUTER_SVC_URL=http://computer-svc:3030
|
||||
LIBRARY_SVC_URL=http://library-svc:3009
|
||||
MEMORY_SVC_URL=http://memory-svc:3028
|
||||
|
||||
# External Services
|
||||
SEARXNG_URL=http://searxng:8080
|
||||
CRAWL4AI_URL=http://crawl4ai:11235
|
||||
|
||||
# ============================================
|
||||
# === COMPUTER SERVICE (Perplexity Computer) ===
|
||||
# ============================================
|
||||
|
||||
COMPUTER_SVC_PORT=3030
|
||||
|
||||
# Docker Sandbox (для исполнения кода)
|
||||
SANDBOX_IMAGE=gooseek/sandbox:latest
|
||||
|
||||
# --- Telegram Connector ---
|
||||
TELEGRAM_BOT_TOKEN=123456789:AABBccDDeeFFggHHiiJJkkLLmmNNoo
|
||||
|
||||
# --- Email Connector (SMTP) ---
|
||||
SMTP_HOST=smtp.gmail.com
|
||||
SMTP_PORT=587
|
||||
SMTP_USERNAME=your@gmail.com
|
||||
SMTP_PASSWORD=app-password
|
||||
SMTP_FROM=your@gmail.com
|
||||
SMTP_FROM_NAME=GooSeek Computer
|
||||
|
||||
# --- S3/MinIO Storage Connector ---
|
||||
S3_ENDPOINT=minio:9000
|
||||
S3_ACCESS_KEY=minioadmin
|
||||
S3_SECRET_KEY=minioadmin
|
||||
S3_BUCKET=gooseek-artifacts
|
||||
S3_USE_SSL=false
|
||||
S3_REGION=us-east-1
|
||||
S3_PUBLIC_URL=https://storage.gooseek.ru
|
||||
|
||||
# ============================================
|
||||
# === DISCOVER SERVICE ===
|
||||
# ============================================
|
||||
|
||||
DISCOVER_DB_PATH=/data/discover_articles.db
|
||||
|
||||
# ============================================
|
||||
# === GHOST CMS (Discover блог) ===
|
||||
# ============================================
|
||||
|
||||
GHOST_URL=http://ghost:2368
|
||||
GHOST_CONTENT_API_KEY=your-ghost-api-key
|
||||
GHOST_DB_ROOT_PASSWORD=ghost_root
|
||||
GHOST_DB_PASSWORD=ghost
|
||||
|
||||
# Ghost Mail (2FA, приглашения)
|
||||
GHOST_MAIL_USER=2factor@yourdomain.com
|
||||
GHOST_MAIL_PASSWORD=mail-password
|
||||
GHOST_MAIL_FROM=GooSeek <2factor@yourdomain.com>
|
||||
GHOST_MAIL_PORT=465
|
||||
|
||||
# ============================================
|
||||
# === CACHE WORKER ===
|
||||
# ============================================
|
||||
|
||||
LLM_DISCOVER_PROVIDER=env
|
||||
LLM_DISCOVER_MODEL=gpt-4o-mini
|
||||
|
||||
# ============================================
|
||||
# === TIMEOUTS (ms) ===
|
||||
# ============================================
|
||||
|
||||
HTTP_TIMEOUT_MS=60000
|
||||
LLM_TIMEOUT_MS=120000
|
||||
SCRAPE_TIMEOUT_MS=25000
|
||||
SEARCH_TIMEOUT_MS=10000
|
||||
|
||||
# ============================================
|
||||
# === SECRETS (для K8s — создаются отдельно) ===
|
||||
# ============================================
|
||||
# kubectl create secret generic db-credentials --from-literal=DATABASE_URL=...
|
||||
# kubectl create secret generic llm-credentials --from-literal=OPENAI_API_KEY=...
|
||||
# kubectl create secret generic gooseek-secrets --from-env-file=.env
|
||||
|
||||
Reference in New Issue
Block a user