workspace-v1/03-fase-shared-infra/README.md
Adrian Flores Cortes 967ab360bb Initial commit: Workspace v1 with 3-layer architecture
Structure:
- control-plane/: Registries, SIMCO directives, CI/CD templates
- projects/: Gamilit, ERP-Suite, Trading-Platform, Betting-Analytics
- shared/: Libs catalog, knowledge-base

Key features:
- Centralized port, domain, database, and service registries
- 23 SIMCO directives + 6 fundamental principles
- NEXUS agent profiles with delegation rules
- Validation scripts for workspace integrity
- Dockerfiles for all services
- Path aliases for quick reference

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 00:35:19 -06:00

216 lines
4.8 KiB
Markdown

# FASE 3: SHARED INFRASTRUCTURE
**Estado:** Pendiente
**Duracion Estimada:** 2-3 dias
**Agente Principal:** DevOps-Agent
**Dependencias:** Fase 1 y 2 completadas
---
## OBJETIVO
Crear la infraestructura compartida que sera usada por todos los proyectos:
1. Configuracion de Docker networks aisladas
2. Configuracion de Traefik como reverse proxy
3. Templates de docker-compose por tipo de proyecto
4. Configuracion de ambientes (local, dev, staging, prod)
---
## ALCANCE
### Incluye
- Docker networks por proyecto y ambiente
- Traefik configuration con routing dinamico
- Templates de docker-compose.yml
- Variables de entorno por ambiente
- Scripts de setup para desarrollo local
### No Incluye
- Configuracion de Kubernetes (futuro)
- CI/CD pipelines (definido en Fase 2, implementado por proyecto)
- Migracion de proyectos (Fase 4)
---
## COMPONENTES A CREAR
### 3.1 Docker Networks
```yaml
# Estructura de redes por proyecto
networks:
# Red por proyecto y ambiente
gamilit_local:
name: gamilit_local
driver: bridge
gamilit_dev:
name: gamilit_dev
driver: bridge
# Red compartida para infraestructura
infra_shared:
name: infra_shared
driver: bridge
# Traefik, monitoring, etc.
```
### 3.2 Traefik Configuration
```
control-plane/devtools/docker/traefik/
|
+-- traefik.yml # Configuracion principal
+-- dynamic/
| +-- routers.yml # Routers dinamicos
| +-- middlewares.yml # Middlewares comunes
+-- certs/
+-- README.md # Instrucciones para certs
```
### 3.3 Docker Compose Templates
```
control-plane/devtools/docker/templates/
|
+-- docker-compose.base.yml # Template base
+-- docker-compose.backend.yml # Template para backend
+-- docker-compose.frontend.yml # Template para frontend
+-- docker-compose.fullstack.yml # Template completo
+-- docker-compose.ml.yml # Template para ML services
```
### 3.4 Environment Configuration
```
control-plane/devtools/configs/
|
+-- env/
| +-- .env.template # Template con todas las variables
| +-- .env.local.template # Variables para local
| +-- .env.dev.template # Variables para development
| +-- .env.staging.template # Variables para staging
| +-- .env.prod.template # Variables para production
|
+-- scripts/
+-- setup-local.sh # Setup inicial para desarrollo
+-- generate-env.sh # Genera .env desde template
```
---
## ESTRUCTURA OBJETIVO
```
control-plane/
|
+-- devtools/
| +-- docker/
| | +-- traefik/
| | | +-- traefik.yml
| | | +-- dynamic/
| | | | +-- routers.yml
| | | | +-- middlewares.yml
| | | +-- docker-compose.traefik.yml
| | |
| | +-- templates/
| | | +-- docker-compose.base.yml
| | | +-- docker-compose.backend.yml
| | | +-- docker-compose.frontend.yml
| | | +-- docker-compose.fullstack.yml
| | |
| | +-- networks/
| | +-- create-networks.sh
| | +-- networks.yml
| |
| +-- configs/
| | +-- env/
| | | +-- .env.template
| | | +-- .env.local.template
| | +-- scripts/
| | +-- setup-local.sh
| | +-- generate-env.sh
| |
| +-- scripts/
| +-- bootstrap/
| +-- init-workspace.sh
| +-- init-project.sh
```
---
## SUBFASES
### 3.1 Analisis
1. Revisar configuracion Docker actual de proyectos
2. Identificar puertos y dominios de ports/domains registry
3. Documentar requerimientos de red por proyecto
### 3.2 Planeacion
1. Disenar estructura de redes Docker
2. Disenar configuracion de Traefik
3. Crear templates de docker-compose
4. Definir variables de entorno por ambiente
### 3.3 Implementacion
1. Crear estructura de carpetas
2. Crear archivos de configuracion
3. Crear scripts de setup
4. Probar configuracion local
### 3.4 Validacion
1. Verificar que redes se crean correctamente
2. Verificar que Traefik rutea correctamente
3. Verificar que templates son usables
4. Documentar uso
---
## DOCUMENTOS DE ESTA FASE
```
03-fase-shared-infra/
|
+-- README.md # Este archivo
|
+-- ANALISIS/
| +-- 00-PLAN-ANALISIS.md
| +-- 01-DOCKER-ACTUAL.md # Estado actual de Docker en proyectos
| +-- 02-REQUERIMIENTOS.md # Requerimientos de red por proyecto
|
+-- PLANEACION/
| +-- 00-TAREAS.md
| +-- 01-DISENO-REDES.md
| +-- 02-DISENO-TRAEFIK.md
| +-- 03-TEMPLATES.md
|
+-- IMPLEMENTACION/
| +-- 00-EJECUCION.md
|
+-- PROMPTS/
| +-- PROMPT-DEVOPS-AGENT.md
|
+-- VALIDACION/
+-- CHECKLIST.md
```
---
## SIGUIENTE PASO
1. Completar Fase 1 y 2
2. Leer ANALISIS/00-PLAN-ANALISIS.md
3. Ejecutar analisis de Docker actual
---
**Agente Responsable:** DevOps-Agent