Self-host¶
DiagramaHub es open source (Apache 2.0) y se instala en tu propia infraestructura con Docker Compose. Esta sección es para quien opera una instancia: instalarla, configurarla, exponerla a internet, conectar servicios externos y mantenerla al día.
Software en beta
DiagramaHub está en versión 0.x. Las APIs y estructuras de datos pueden cambiar entre
versiones: lee las notas de versión antes de actualizar y
respalda la base de datos.
Requisitos¶
| Requisito | Detalle |
|---|---|
| Docker + Docker Compose | Todo corre en contenedores; no necesitas Python ni Node en el host. |
| Git | Para clonar el repositorio y actualizar. |
| MongoDB 8 | Incluido como contenedor en el modo local-full, o externo (Atlas, servidor propio) en el modo external-mongodb. |
| Puertos libres | 5173 (frontend), 5172 (API) y 27017 (MongoDB, solo modo local-full). |
| Sistema operativo | El instalador install.sh detecta macOS, Ubuntu/Debian, CentOS/RHEL y Fedora. |
Servicios¶
Una instalación tiene cuatro servicios en la red Docker diagramahub-network. Kroki no
publica ningún puerto: solo el backend habla con él.
flowchart LR
U([Navegador]) -->|":5173"| F[frontend<br/>React SPA]
U -->|":5172 /api/v1"| B[backend<br/>FastAPI]
subgraph net [diagramahub-network]
F
B -->|"http://kroki:8000"| K[kroki<br/>PlantUML · D2 · DBML]
B -->|MONGO_URI| M[(mongodb<br/>MongoDB 8)]
end
B -.->|opcional| X[Resend · Stripe · Google OAuth<br/>proveedores de IA · Sentry]
| Servicio | Contenedor | Puerto | Función |
|---|---|---|---|
| Frontend | diagramahub-frontend |
5173 | Interfaz web. Mermaid se renderiza en el navegador. |
| Backend | diagramahub-backend |
5172 | API REST, lógica de negocio, proxy hacia Kroki. |
| Kroki | diagramahub-kroki |
interno | Render en servidor de PlantUML, D2 y DBML. Tu contenido no sale de tu red. |
| MongoDB | diagramahub-mongodb |
27017 | Base de datos (solo en modo local-full). |
En esta sección¶
-
Instalador de una línea (
install.sh) o instalación manual paso a paso. -
Referencia completa de variables de entorno del backend y del frontend.
-
Modos de despliegue, reverse proxy, HTTPS, CORS y checklist de endurecimiento.
-
Email (Resend), pagos (Stripe) e inicio de sesión con Google desde el panel de admin.
-
Define tus propios planes, límites de proyectos/diagramas y precios.
-
Actualizar de versión, respaldos de MongoDB, scripts de reparación, logs y Sentry.
-
Errores comunes y cómo diagnosticarlos.
Ruta rápida¶
- Instala con
install.sho manualmente. - Genera y configura
AI_ENCRYPTION_KEY(ver Configuración): sin ella no se pueden guardar proveedores de IA, integraciones ni MFA por app. - Abre
http://localhost:5173: el asistente/setupcrea la cuenta de administrador (el primer usuario registrado siempre es admin). - Conecta un motor de email en Integraciones para habilitar recuperación de contraseña y códigos MFA por correo.
- Antes de exponerla a internet, sigue la guía de Producción.