Plataforma Odoo 19 sobre Docker Swarm

Arquitectura de despliegue branch-aware para entornos Git-native.

Stack: Git + Docker SwarmRuntime: Odoo 19Deployment: TraefikMode: Branch-aware

Modelo

Git + Docker Swarm

Ruta

doc.<ip>.sslip.io

Operacion

Documentacion tecnica publicada

General

Overview

Esta pagina resume la base operativa de la plataforma y la forma en que se despliega, opera y evoluciona.

Contexto de plataforma

La plataforma combina un runtime Odoo 19 Enterprise, un stack Docker Swarm single-node, publicacion HTTPS con Traefik y un flujo de operacion orientado a ramas y promocion progresiva.

Alcance del documento

Esta seccion concentra arquitectura, runbooks, despliegue, decisiones tecnicas y procedimientos de soporte para consulta operativa.

Flujos establecidos

La operacion real vive en Makefile y scripts/*.sh. Estos son los comandos base que el equipo usa para trabajar.

cd /srv
make env-check
make deploy
make monitor
make odoo-validate
make health-postdeploy

Capas del sistema

CapaResponsabilidad
EntradaTraefik publica HTTP/HTTPS y enruta por host
AplicacionOdoo 19 ejecuta el runtime ERP
DatosPostgreSQL con pgvector mantiene persistencia
ObservabilidadPrometheus, Grafana y cAdvisor exponen metricas
OperacionMakefile y scripts administran deploy, backup y promotion

Por que branch-aware

El modelo branch-aware permite mapear una rama o subrama a un stack dedicado, con configuracion efectiva propia y URL resoluble por DNS formal o sslip.io.

Resultado esperado

El equipo puede desplegar dev, staging y production, ademas de subramas como staging/cliente-a, sin reconstruir manualmente el plano de entrada ni los secretos en cada cambio.

Ejemplo de despliegue por subrama

cd /srv
make branch-init BRANCH=staging/cliente-a
make branch-switch BRANCH=staging/cliente-a
make branch-deploy BRANCH=staging/cliente-a
make branch-url BRANCH=staging/cliente-a