117 lines
3.9 KiB
Text
117 lines
3.9 KiB
Text
# ==================================================================================
|
|
# SEGURIDAD: CONFIGURACIÓN DE PRODUCCIÓN
|
|
# ==================================================================================
|
|
#
|
|
# IMPORTANTE:
|
|
# 1. Copia este archivo a .env
|
|
# 2. Cambia TODOS los valores de contraseñas y secrets
|
|
# 3. NO compartas este archivo en repositorios públicos
|
|
# 4. Añade .env al .gitignore
|
|
#
|
|
# ==================================================================================
|
|
|
|
# ==================================================================================
|
|
# DATABASE CONFIGURATION - PostgreSQL
|
|
# ==================================================================================
|
|
POSTGRES_DB=rss
|
|
POSTGRES_USER=rss
|
|
# CRÍTICO: Genera una contraseña fuerte (mínimo 32 caracteres aleatorios)
|
|
# Ejemplo para generar: openssl rand -base64 32
|
|
POSTGRES_PASSWORD=CAMBIAR_ESTO_POR_UNA_CONTRASEÑA_FUERTE_DE_32_CARACTERES
|
|
|
|
DB_NAME=rss
|
|
DB_USER=rss
|
|
DB_PASS=CAMBIAR_ESTO_POR_UNA_CONTRASEÑA_FUERTE_DE_32_CARACTERES
|
|
DB_HOST=db
|
|
DB_PORT=5432
|
|
DB_WRITE_HOST=db
|
|
DB_READ_HOST=db-replica
|
|
|
|
# ==================================================================================
|
|
# REDIS CONFIGURATION - Autenticación habilitada
|
|
# ==================================================================================
|
|
REDIS_HOST=redis
|
|
REDIS_PORT=6379
|
|
# CRÍTICO: Genera una contraseña fuerte para Redis
|
|
# Ejemplo: openssl rand -base64 32
|
|
REDIS_PASSWORD=CAMBIAR_ESTO_POR_UNA_CONTRASEÑA_FUERTE_REDIS
|
|
|
|
# ==================================================================================
|
|
# APPLICATION SECRETS
|
|
# ==================================================================================
|
|
# CRÍTICO: Secret key para Flask - debe ser único y secreto
|
|
# Genera con: python -c "import secrets; print(secrets.token_hex(32))"
|
|
SECRET_KEY=CAMBIAR_ESTO_POR_UN_TOKEN_HEX_DE_64_CARACTERES
|
|
|
|
# ==================================================================================
|
|
# MONITORING - Grafana
|
|
# ==================================================================================
|
|
# IMPORTANTE: Cambia el password de admin de Grafana
|
|
GRAFANA_PASSWORD=CAMBIAR_ESTO_POR_UNA_CONTRASEÑA_FUERTE_GRAFANA
|
|
|
|
# ==================================================================================
|
|
# EXTERNAL SERVICES
|
|
# ==================================================================================
|
|
ALLTALK_URL=http://host.docker.internal:7851
|
|
|
|
# ==================================================================================
|
|
# AI MODELS & WORKERS
|
|
# ==================================================================================
|
|
RSS_MAX_WORKERS=3
|
|
TARGET_LANGS=es
|
|
TRANSLATOR_BATCH=128
|
|
ENQUEUE=300
|
|
|
|
# RSS Ingestor Configuration
|
|
RSS_POKE_INTERVAL_MIN=15
|
|
RSS_MAX_FAILURES=10
|
|
RSS_FEED_TIMEOUT=60
|
|
|
|
# URL Feed Discovery Worker
|
|
URL_DISCOVERY_INTERVAL_MIN=15
|
|
URL_DISCOVERY_BATCH_SIZE=10
|
|
MAX_FEEDS_PER_URL=5
|
|
|
|
# CTranslate2 / AI Model Paths
|
|
CT2_MODEL_PATH=/app/models/nllb-ct2
|
|
CT2_DEVICE=cuda
|
|
CT2_COMPUTE_TYPE=int8_float16
|
|
UNIVERSAL_MODEL=facebook/nllb-200-distilled-600M
|
|
|
|
# Embeddings
|
|
EMB_MODEL=sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
|
|
EMB_BATCH=64
|
|
EMB_DEVICE=cuda
|
|
|
|
# NER
|
|
NER_LANG=es
|
|
NER_BATCH=64
|
|
|
|
# Flask / Gunicorn
|
|
GUNICORN_WORKERS=8
|
|
FLASK_DEBUG=0
|
|
|
|
# Qdrant Configuration
|
|
QDRANT_HOST=qdrant
|
|
QDRANT_PORT=6333
|
|
QDRANT_COLLECTION_NAME=news_vectors
|
|
QDRANT_BATCH_SIZE=100
|
|
QDRANT_SLEEP_IDLE=30
|
|
|
|
# ==================================================================================
|
|
# COMANDOS ÚTILES PARA GENERAR CONTRASEÑAS SEGURAS
|
|
# ==================================================================================
|
|
#
|
|
# PostgreSQL Password (32 caracteres):
|
|
# openssl rand -base64 32
|
|
#
|
|
# Redis Password (32 caracteres):
|
|
# openssl rand -base64 32
|
|
#
|
|
# Flask Secret Key (64 hex chars):
|
|
# python -c "import secrets; print(secrets.token_hex(32))"
|
|
#
|
|
# Grafana Password (fuerte):
|
|
# openssl rand -base64 24
|
|
#
|
|
# ==================================================================================
|