Sobre el proyecto

Levelrail es una plataforma de despliegue autoalojada escrita en Go. Su elección de diseño distintiva, según describe el README, es que un pequeño agente se ejecuta en cada nodo y se comunica directamente con la API de Docker Engine, en lugar de que el plano de control SSH a los servidores y ejecute comandos docker de forma indirecta. Apuntado a una o más máquinas Linux, actúa como una nube privada: envía a un repositorio git y obtienes una aplicación en ejecución con TLS, logs, métricas y rollback. Las funcionalidades core de despliegue descritas incluyen: despliegues sin tiempo de inactividad mediante estrategias rolling, recreate o blue-green, supervisados por readiness y liveness probes, con rollback a imágenes anteriores ancladas y disponibles. La observabilidad se entrega integrada en el núcleo, no instalada por separado, cubriendo métricas locales por nodo a resolución de 15 segundos y búsqueda completa de logs en texto, con marcadores de despliegue superpuestos en gráficas de métricas para conectar un cambio con su efecto. La gestión de bases de datos abarca ocho motores a través de un único registro: Postgres, Redis, MySQL, MongoDB, MariaDB, KeyDB, Dragonfly y ClickHouse, con copias de seguridad programadas, restauración y verificación automática posterior a cada backup aplicadas a todos ellos. El soporte multi-nodo incluye una malla WireGuard, DNS interno entre nodos, cordon y drain, y sin requisito de puertos entrantes en los servidores gestionados. La integración git cubre webhooks de GitHub, GitLab y Bitbucket, además de entornos de preview por pull request con limpieza automática. El control de acceso está modelado sobre AWS IAM, con políticas Allow/Deny escaladas a un recurso específico, junto con un registro de auditoría completo con exportación CSV. El sistema de alerting ofrece reglas de umbral, crashloop, vencimiento de certificados y otros tipos, entregadas a una larga lista de destinos: Slack, Discord, email, Telegram, Pushover, PagerDuty, Microsoft Teams, Resend, Gotify, Ntfy, Mattermost, Lark, Rocket.Chat, Opsgenie, Webex, Google Chat o un webhook genérico. La misma API HTTP que sustenta el dashboard también alimenta un servidor MCP, permitiendo que herramientas de IA listen aplicaciones, lean logs y ayuden a diagnosticar crashloops. Arquitectura, según el README: el plano de control es un único binario Go que reconcilia registros de recursos declarativos contra el estado observado de Docker, un patrón controller sin el resto de Kubernetes; el agente de nodo realiza dial-out hacia el plano de control y usa el socket de Docker mediante la Engine API; Caddy está integrado como librería Go para TLS automático y enrutamiento de dominios; BuildKit se emplea como librería Go en lugar de docker build; el estado reside en SQLite embebido en modo WAL mediante modernc.org/sqlite; la API HTTP está versionada bajo /api/v1; el frontend es React, Vite, TypeScript, Tailwind y TanStack Router/Query, compilado a activos estáticos e incrustado en el binario del plano de control. Se entregan dos binarios en total, y en modo single-node el transporte del agente corre in-process. Las opciones de instalación documentadas son: un script instalador tipo curl pipeado para Linux que también instala Docker y una unidad systemd; un comando docker run de una línea usando imágenes publicadas para linux/amd64 y linux/arm64; y la construcción desde código fuente con Go. El desarrollo local requiere Go 1.26 o superior y Docker. El estado se declara con franqueza como desarrollo temprano, activo, sin versión estable; el proyecto indica que no está listo para cargas de trabajo en producción y que las APIs, el formato del spec de aplicación y el layout de datos en disco pueden cambiar sin previo aviso. Más allá del path de despliegue, el README enumera como ya implementados: motor de políticas estilo IAM, logging de auditoría, feature flags, alerting y los motores de bases de datos, y señala un catálogo curado de 123 plantillas de servicios. El README incluye una comparación detallada contra Coolify, Dokploy, CapRover, Dokku y Kamal, incluyendo una brecha reconocida en tamaño de catálogo de plantillas; esas afirmaciones competitivas son el posicionamiento propio del proyecto extraído de su documentación comparativa. La licencia es Apache 2.0.