# ================================== # CRM Aduanasoft - Variables de Entorno # ================================== # ----- PostgreSQL App ----- POSTGRES_APP_PASSWORD=postgres # ----- PostgreSQL Keycloak ----- POSTGRES_KEYCLOAK_PASSWORD=postgres # ----- Keycloak Admin ----- KEYCLOAK_ADMIN=admin KEYCLOAK_ADMIN_PASSWORD=admin # ----- Keycloak Configuración ----- KEYCLOAK_REALM=master KEYCLOAK_CLIENT_ID=app-backend KEYCLOAK_CLIENT_SECRET=dev-secret KEYCLOAK_FRONTEND_CLIENT_ID=app-frontend # ----- Backend ----- APP_NAME=CRM Aduanasoft DEBUG=True ENVIRONMENT=development CORE_DB_HOST=postgres CORE_DB_PORT=5432 CORE_DB_NAME=crm_core CORE_DB_USER=postgres CORE_DB_PASSWORD=postgres # Lista de orígenes permitidos (CORS) # Ejemplo para Hub: http://localhost:5173,http://100.78.6.108:5174,http://100.78.6.108:8001 CORS_ORIGINS=http://localhost:5173,http://localhost:3000 # ----- Frontend ----- NODE_ENV=development VITE_API_URL=http://localhost:8000/api INTERNAL_API_URL=http://backend:8000/api # ⚠️ ADVERTENCIA PRODUCCIÓN — ORIGIN, VITE_HUB_URL y APP_PUBLIC_URL # ───────────────────────────────────────────────────────────────────── # Docker Compose carga ESTE archivo (.env raíz) automáticamente cuando # se ejecuta: docker compose -f docker-compose.prod.yml up # # Si estas variables tienen valores localhost aquí, PISARÁN los defaults # de docker-compose.prod.yml y causarán que el login falle en producción # (redirect_uri y KC URL apuntarán a localhost). # # Para dev local (docker-compose.yml): dejar localhost. # Para producción (docker-compose.prod.yml): asegurarse que el servidor # NO tenga este .env raíz con valores localhost, O usar: # docker compose --env-file .env.prod -f docker-compose.prod.yml up # # Variables críticas para producción: # ORIGIN=https://anexo76-dev.aduanasoft.com ← determina url.origin en SvelteKit # VITE_HUB_URL=https://workspace.aduanasoft.com # APP_PUBLIC_URL=https://anexo76-dev.aduanasoft.com ORIGIN=http://localhost:5173 VITE_HUB_URL=http://localhost:3001 APP_PUBLIC_URL=http://localhost:5173 VITE_KEYCLOAK_REALM=master VITE_KEYCLOAK_URL=http://localhost:8080/kcauth VITE_KEYCLOAK_CLIENT_ID=app-frontend #------ Celery / Valkey ---------- VALKEY_URL=redis://valkey:6379/0 PERMISSION_CACHE_ENABLED=true PERMISSION_CACHE_TTL_SECONDS=300 # ----- MinIO (S3-compatible) ----- MINIO_ROOT_USER=minioadmin MINIO_ROOT_PASSWORD=minioadmin MINIO_API_PORT=9100 MINIO_CONSOLE_PORT=9101 # ----- Imports CSV (layouts_csv): redis | minio ----- CSV_IMPORT_STORAGE=minio S3_ENDPOINT_URL=http://minio:9000 S3_ACCESS_KEY=minioadmin S3_SECRET_KEY=minioadmin S3_BUCKET=crm S3_REGION=us-east-1 S3_USE_SSL=false # Logos, certificados, help: mismo bucket. Si CSV_IMPORT_STORAGE=minio, también se usa MinIO aquí # (use_s3_object_storage = minio CSV o S3_FILE_STORAGE=true). S3_FILE_STORAGE=true S3_PRESIGNED_EXPIRES_SECONDS=3600 COVE_FIEL_HASH_KEY= COVE_FIEL_HASH_IV= COVE_API_URL=https://api.vu.aduanasoft.com COVE_API_VERIFY_SSL=False # ----- Sitar API ----- SITAR_API_URL=http://api.sitar.aduanasoft.com SITAR_API_USER=user_sitar_api SITAR_API_PASSWORD=password123 # ================================== # CONFIGURACIÓN DE SINCRONIZACIÓN # ================================== # Hub IP: 100.78.6.108 # URL del Hub para sincronización (Solo si es CLIENTE) # Ejemplo: http://100.78.6.108:8001/api/v1/core/help-center/sync/ CENTRAL_SERVER_URL= # UUID único de este cliente (Opcional, se genera uno si está vacío) # Token de seguridad compartido (Debe ser IDÉNTICO en Hub y Clientes) SYNC_SECRET_TOKEN=change-this-sync-token-in-production # Lista de spokes (Solo si es HUB y desea retransmitir a otros - Opcional) SPOKE_URLS=""