Guía de Deployment
🚀 Deployment en Railway (Recomendado)
Configuración Actual de Producción
Plataforma: Railway.app
Proyecto: Datalake Nerdistor
Estado: ✅ Desplegado y funcionando
URLs de Producción:
- Backend API: https://nerdistan-datalake-production.up.railway.app
- API Docs: https://nerdistan-datalake-production.up.railway.app/docs
- Frontend Dashboard: https://nerdistan-cdp-frontend-production.up.railway.app
- Health Check: https://nerdistan-datalake-production.up.railway.app/health
Repositorios GitHub (PRIVADOS):
- Backend: https://github.com/NomadaDigital01/nerdistan-datalake
- Frontend: https://github.com/NomadaDigital01/nerdistan-cdp-frontend
- Branch de Deploy:
feature/railway-deployment
🔧 Configuración Railway
1. Variables de Entorno Backend
# Railway PostgreSQL (Automático)
DATABASE_URL=[Railway PostgreSQL URL]
# API Configuration
PORT=8000
ENVIRONMENT=production
DEBUG=false
CORS_ORIGINS=["*"]
# Security
JWT_SECRET=[Generated JWT Secret]
# Integrations (Configurar según tenant)
VTEX_API_KEY=vtexappkey-account-key
VTEX_API_TOKEN=your-vtex-token
VTEX_ACCOUNT=your-account
VTEX_ENVIRONMENT=vtexcommercestable
2. Variables de Entorno Frontend
# API Connection
VITE_API_URL=https://nerdistan-datalake-production.up.railway.app
VITE_APP_NAME="Nerdistan CDP"
VITE_APP_ENV=production
# Features
VITE_ENABLE_ANALYTICS=true
VITE_ENABLE_REALTIME=true
🛠️ Comandos Railway CLI
Administración del Proyecto
# Vincular proyecto local
cd /path/to/nerdistan-datalake
railway link
# Seleccionar: Datalake Nerdistor
# Ver logs del backend
railway service
# Seleccionar: nerdistan-datalake
railway logs
# Ver logs del frontend
cd ../nerdistan-cdp-frontend
railway service
# Seleccionar: nerdistan-cdp-frontend
railway logs
# Variables de entorno
railway variables
# Redeploy manual
railway up
# Ver estado general
railway status
Gestión de Base de Datos
# Conectar a PostgreSQL
railway connect postgres
# Backup de base de datos
railway run pg_dump $DATABASE_URL > backup.sql
# Restore desde backup
railway run psql $DATABASE_URL < backup.sql
🗄️ Base de Datos
PostgreSQL en Railway
# Configuración automática
Host: postgres.railway.internal
Database: railway
Usuario: postgres
Password: [Automático en Railway]
Conexión: Via DATABASE_URL
Migración desde DigitalOcean (Legacy)
-- Conexión legacy (solo lectura)
Host: db-postgresql-nyc1-33151-do-user-22736056-0.i.db.ondigitalocean.com
Port: 25060
Database: nerdistan_prod
User: miguel
SSL: Required
Schema Setup
# Ejecutar migraciones iniciales
railway run python -c "
from 02_implementation.00_run_all import run_all_systems
run_all_systems()
"
# Verificar tables
railway run psql $DATABASE_URL -c "\dt"