# ============================================================================= # DEPLOYMENT-INVENTORY.yml # ============================================================================= # Inventario completo de despliegue para todos los proyectos # Gestionado por: DevEnv Agent # Fecha: 2025-12-12 # Version: 1.0.0 # ============================================================================= version: "1.0.0" updated: "2025-12-12" maintainer: "DevEnv Agent" # ============================================================================= # SERVIDORES # ============================================================================= servers: main: ip: "72.60.226.4" hostname: "isem-main" purpose: "Servidor principal multi-proyecto" services: - nginx - jenkins - docker - postgresql - redis - gitea projects: - trading-platform - erp-suite - platform-marketing-content - betting-analytics - inmobiliaria-analytics gamilit: ip: "74.208.126.102" hostname: "gamilit-prod" purpose: "Servidor dedicado Gamilit" services: - nginx - pm2 - postgresql projects: - gamilit # ============================================================================= # REPOSITORIOS GIT # ============================================================================= repositories: gamilit: url: "https://github.com/rckrdmrd/gamilit-workspace.git" type: "github" branch_prod: "main" branch_staging: "develop" trading-platform: url: "http://72.60.226.4:3000/rckrdmrd/trading-platform.git" type: "gitea" branch_prod: "main" branch_staging: "develop" status: "pendiente_crear" erp-suite: url: "http://72.60.226.4:3000/rckrdmrd/erp-suite.git" type: "gitea" branch_prod: "main" branch_staging: "develop" status: "pendiente_crear" platform-marketing-content: url: "http://72.60.226.4:3000/rckrdmrd/pmc.git" type: "gitea" branch_prod: "main" branch_staging: "develop" status: "pendiente_crear" betting-analytics: url: "http://72.60.226.4:3000/rckrdmrd/betting-analytics.git" type: "gitea" branch_prod: "main" branch_staging: "develop" status: "reservado" inmobiliaria-analytics: url: "http://72.60.226.4:3000/rckrdmrd/inmobiliaria-analytics.git" type: "gitea" branch_prod: "main" branch_staging: "develop" status: "reservado" # ============================================================================= # SUBDOMINIOS Y DNS # ============================================================================= domains: base_domain: "isem.dev" assignments: # Gamilit (servidor independiente) gamilit: frontend: "gamilit.com" frontend_alt: "app.gamilit.com" backend: "api.gamilit.com" server: "74.208.126.102" # Trading Platform trading-platform: frontend: "trading.isem.dev" backend: "api.trading.isem.dev" websocket: "ws.trading.isem.dev" server: "72.60.226.4" # ERP Suite erp-core: frontend: "erp.isem.dev" backend: "api.erp.isem.dev" server: "72.60.226.4" erp-construccion: frontend: "construccion.erp.isem.dev" backend: "api.construccion.erp.isem.dev" server: "72.60.226.4" erp-vidrio: frontend: "vidrio.erp.isem.dev" backend: "api.vidrio.erp.isem.dev" server: "72.60.226.4" erp-mecanicas: frontend: "mecanicas.erp.isem.dev" backend: "api.mecanicas.erp.isem.dev" server: "72.60.226.4" erp-retail: frontend: "retail.erp.isem.dev" backend: "api.retail.erp.isem.dev" server: "72.60.226.4" erp-clinicas: frontend: "clinicas.erp.isem.dev" backend: "api.clinicas.erp.isem.dev" server: "72.60.226.4" erp-pos: frontend: "pos.erp.isem.dev" backend: "api.pos.erp.isem.dev" server: "72.60.226.4" # Platform Marketing Content pmc: frontend: "pmc.isem.dev" backend: "api.pmc.isem.dev" server: "72.60.226.4" # Betting Analytics (reservado) betting: frontend: "betting.isem.dev" backend: "api.betting.isem.dev" server: "72.60.226.4" status: "reservado" # Inmobiliaria Analytics (reservado) inmobiliaria: frontend: "inmobiliaria.isem.dev" backend: "api.inmobiliaria.isem.dev" server: "72.60.226.4" status: "reservado" # ============================================================================= # MATRIZ DE PUERTOS (PRODUCCIÓN) # ============================================================================= ports_production: # Gamilit (74.208.126.102) gamilit: frontend: 3005 backend: 3006 db: 5432 # Trading Platform (72.60.226.4) trading-platform: frontend: 3080 backend: 3081 websocket: 3082 ml_engine: 3083 data_service: 3084 llm_agent: 3085 trading_agents: 3086 ollama_webui: 3087 db: 5432 redis: 6379 # ERP Suite (72.60.226.4) erp-core: frontend: 3010 backend: 3011 db: 5432 erp-construccion: frontend: 3020 backend: 3021 db: 5433 redis: 6380 erp-vidrio: frontend: 3030 backend: 3031 db: 5434 redis: 6381 erp-mecanicas: frontend: 3040 backend: 3041 db: 5432 erp-retail: frontend: 3050 backend: 3051 db: 5436 redis: 6383 erp-clinicas: frontend: 3060 backend: 3061 db: 5437 redis: 6384 erp-pos: frontend: 3070 backend: 3071 db: 5433 # PMC (72.60.226.4) pmc: frontend: 3110 backend: 3111 db: 5432 minio_api: 9000 minio_console: 9001 comfyui: 8188 # Reservados betting: frontend: 3090 backend: 3091 db: 5438 inmobiliaria: frontend: 3100 backend: 3101 db: 5439 # ============================================================================= # BASES DE DATOS PRODUCCIÓN # ============================================================================= databases_production: # Servidor 74.208.126.102 gamilit: host: "localhost" port: 5432 name: "gamilit_platform" user: "gamilit_user" server: "74.208.126.102" # Servidor 72.60.226.4 trading-platform: host: "localhost" port: 5432 name: "orbiquant_platform" user: "orbiquant_user" server: "72.60.226.4" erp-suite: host: "localhost" port: 5432 name: "erp_generic" user: "erp_admin" server: "72.60.226.4" pmc: host: "localhost" port: 5432 name: "pmc_prod" user: "pmc_user" server: "72.60.226.4" # ============================================================================= # MÉTODOS DE DESPLIEGUE POR PROYECTO # ============================================================================= deployment_methods: # GAMILIT - Usa PM2 (NO Jenkins) gamilit: method: "pm2" server: "74.208.126.102" user: "isem" repo: "https://github.com/rckrdmrd/gamilit-workspace.git" deploy_path: "/home/isem/workspace/workspace-gamilit/gamilit/projects/gamilit" ecosystem_file: "ecosystem.config.js" commands: deploy: "git pull && npm install && npm run build:all && pm2 reload ecosystem.config.js --env production && pm2 save" restart: "pm2 restart all" stop: "pm2 stop all" status: "pm2 status" logs: "pm2 logs" processes: - name: "gamilit-backend" port: 3006 instances: 2 mode: "cluster" - name: "gamilit-frontend" port: 3005 instances: 1 mode: "fork" # DEMÁS PROYECTOS - Usan Jenkins + Docker trading-platform: method: "jenkins-docker" server: "72.60.226.4" jenkins_job: "trading-platform" erp-suite: method: "jenkins-docker" server: "72.60.226.4" jenkins_job: "erp-suite" pmc: method: "jenkins-docker" server: "72.60.226.4" jenkins_job: "pmc" betting-analytics: method: "jenkins-docker" server: "72.60.226.4" jenkins_job: "betting-analytics" status: "reservado" inmobiliaria-analytics: method: "jenkins-docker" server: "72.60.226.4" jenkins_job: "inmobiliaria-analytics" status: "reservado" # ============================================================================= # CI/CD JENKINS (Solo para proyectos en 72.60.226.4) # ============================================================================= # NOTA: Gamilit NO usa Jenkins, usa PM2 directamente en 74.208.126.102 jenkins: url: "http://72.60.226.4:8080" note: "Solo para proyectos desplegados en 72.60.226.4. Gamilit usa PM2." jobs: trading-platform: - name: "trading-platform-backend" type: "pipeline" trigger: "webhook" branch: "main" - name: "trading-platform-frontend" type: "pipeline" trigger: "webhook" branch: "main" erp-suite: - name: "erp-core" type: "multibranch" trigger: "webhook" - name: "erp-verticales" type: "multibranch" parameters: - vertical: ["construccion", "vidrio", "mecanicas", "retail", "clinicas"] pmc: - name: "pmc-backend" type: "pipeline" trigger: "webhook" - name: "pmc-frontend" type: "pipeline" trigger: "webhook" shared_libraries: - deployNode - deployDocker - notifySlack - healthCheck # ============================================================================= # DOCKER REGISTRY # ============================================================================= docker_registry: url: "72.60.226.4:5000" protocol: "https" images: - "trading-platform-backend" - "trading-platform-frontend" - "erp-core-backend" - "erp-core-frontend" - "erp-construccion-backend" - "erp-construccion-frontend" - "pmc-backend" - "pmc-frontend" # ============================================================================= # NGINX UPSTREAMS # ============================================================================= nginx: config_path: "/etc/nginx" upstreams_path: "/etc/nginx/upstreams" sites_path: "/etc/nginx/conf.d" ssl: certificate: "/etc/letsencrypt/live/isem.dev/fullchain.pem" certificate_key: "/etc/letsencrypt/live/isem.dev/privkey.pem" protocols: "TLSv1.2 TLSv1.3" # ============================================================================= # VARIABLES DE ENTORNO POR AMBIENTE # ============================================================================= environments: development: suffix: ".dev" ssl: false debug: true log_level: "debug" swagger: true staging: suffix: ".staging" ssl: true debug: true log_level: "info" swagger: true production: suffix: "" ssl: true debug: false log_level: "warn" swagger: false # ============================================================================= # CHECKLIST DE IMPLEMENTACIÓN # ============================================================================= implementation_checklist: fase_1_infraestructura: - task: "Instalar Docker y Docker Compose" server: "72.60.226.4" status: "pendiente" - task: "Configurar Docker Registry" server: "72.60.226.4" status: "pendiente" - task: "Instalar Jenkins" server: "72.60.226.4" status: "pendiente" - task: "Configurar Nginx" server: "72.60.226.4" status: "pendiente" - task: "Obtener SSL wildcard" domain: "*.isem.dev" status: "pendiente" fase_2_repositorios: - task: "Crear repo trading-platform en Gitea" status: "pendiente" - task: "Crear repo erp-suite en Gitea" status: "pendiente" - task: "Crear repo pmc en Gitea" status: "pendiente" - task: "Migrar código de monorepo" status: "pendiente" fase_3_cicd: - task: "Configurar jobs Jenkins" status: "pendiente" - task: "Configurar webhooks Gitea" status: "pendiente" - task: "Probar pipelines staging" status: "pendiente" fase_4_despliegue: - task: "Desplegar trading-platform" status: "pendiente" - task: "Desplegar erp-suite" status: "pendiente" - task: "Desplegar pmc" status: "pendiente" - task: "Verificar health checks" status: "pendiente" # ============================================================================= # REFERENCIAS # ============================================================================= references: ports_inventory: "@DEVENV_PORTS" deployment_docs: "core/orchestration/deployment/DEPLOYMENT-ARCHITECTURE.md" nginx_configs: "core/orchestration/deployment/nginx/" jenkins_pipelines: "core/orchestration/deployment/jenkins/"