Vxero Neo
Vxero Neo es una CLI nativa de SSH para desplegar apps Docker en cualquier VPS: instala Docker y Caddy, HTTPS con auto-SSL y swaps sin tiempo de inactividad.
¿Qué es Vxero Neo?
Vxero Neo (Neo) es una herramienta de línea de comandos nativa de SSH para desplegar aplicaciones Docker en un VPS. Se conecta a tu servidor por SSH, configura Docker y Caddy, y despliega tus apps con HTTPS mediante auto-SSL, sin instalar un agente ni usar un plano de control separado.
Neo también gestiona las etapas del ciclo de vida de la aplicación desde el desarrollo local hasta staging y producción. Lee la configuración local de tu proyecto (incluyendo docker-compose.yml, .env y .neo.yml), construye y transfiere imágenes por SSH, realiza comprobaciones de salud y cambia el tráfico sin tiempo de inactividad.
Características clave
- Flujo de despliegue solo SSH (sin agente, sin dashboard): Neo se ejecuta en tu máquina local y se conecta al VPS vía SSH; aparte de Docker/Caddy para el runtime, no requiere herramientas adicionales en el servidor.
- Inicialización automática del servidor (Docker + Caddy): Durante el despliegue, Neo configura Docker y Caddy en el servidor destino para que tus contenedores se ejecuten y reciban tráfico HTTPS.
- De compose/config a un cambio en vivo: Neo lee tu config local, construye la imagen, la transfiere por SSH y luego cambia el tráfico tras las comprobaciones de salud; los contenedores antiguos siguen ejecutándose hasta el cambio.
- Dominio HTTPS instantáneo y opciones de certificados alternativas: Neo puede provisionar HTTPS usando sslip.io (sin DNS necesario) con
--temp. Para dominios reales, usa Let’s Encrypt via Caddy (tras apuntar el DNS), o acepta tu propio certificado con--certy--key. - Generación de config y gestión de entornos:
neo config generateescanea docker-compose.yml y genera automáticamente .neo.yml detectando el servicio de la app, sidecars, workers, variables de entorno y volúmenes. Neo también sincroniza env/estado con comandos comoneo envyneo sync. - Despliegues sin tiempo de inactividad estilo blue-green: Inicia los nuevos contenedores, espera las comprobaciones de salud y realiza el cambio de tráfico para que la versión anterior siga disponible hasta el corte.
- Workers, sidecars y volúmenes persistentes: Define workers de fondo y sidecars en .neo.yml para que se desplieguen junto a la app principal con volúmenes y variables de entorno compartidos. Declara volúmenes en .neo.yml para persistir datos entre redepliegues.
- Multi-servidor y configuraciones por entorno: Usa flags como
--to stagingpara desplegar en staging o producción; cada entorno puede tener su propio dominio, variables de entorno y configuración SSL.
Cómo usar Vxero Neo
- Prepara tu proyecto: Asegúrate de que tu app esté descrita con
docker-compose.yml(y opcional.env). - Genera la config de despliegue de Neo: En el directorio de tu proyecto, ejecuta
neo config generate. Neo escaneadocker-compose.ymly escribe.neo.ymlcon los servicios detectados como la app, workers/sidecars (si están definidos/detectados), variables de entorno y volúmenes. - Desarrolla localmente (opcional pero soportado): Usa
neo devpara envolver docker-compose con la carga de entorno de Neo desde.neo.yml. - Despliega por SSH: Ejecuta
neo deployapuntando a tu VPS. Neo construye la imagen desde tu Dockerfile (y config derivada de compose), la transfiere por SSH, realiza comprobaciones de salud y cambia el tráfico. - Activa HTTPS: Usa
neo domain --temppara una URL HTTPS instantánea basada en sslip.io, o usa un dominio real con Let's Encrypt auto-SSL una vez apuntado el DNS, o proporciona--cert/--keypara tu propio certificado.
Casos de uso
- Despliegues de apps Docker en un solo VM: Despliega una aplicación contenedorizada por VPS (p. ej., un servicio web) donde prefieras automatización basada en SSH en lugar de un orquestador de clúster.
- Staging → producción con config compartida: Usa la misma config en todos los entornos (vía generación de .neo.yml y carga de env), desplegando en staging y luego promoviendo a producción con dominios/SSL diferentes.
- Apps con sidecars y workers de fondo: Despliega una app principal junto a contenedores worker y sidecar definidos en
.neo.yml, incluyendo variables de entorno y volúmenes compartidos. - Proyectos que necesitan HTTPS rápido sin cambios de DNS: Usa
neo domain --temppara obtener una URL HTTPS inmediata para pruebas con sslip.io, y luego cambia a un dominio real cuando el DNS esté listo. - Lanzamientos sin tiempo de inactividad para equipos pequeños: Realiza actualizaciones estilo blue-green con comprobaciones de salud para que la versión antigua siga activa hasta que los nuevos contenedores estén listos.
Preguntas frecuentes
-
¿Neo instala un agente en mi servidor? No. Neo se ejecuta en tu máquina local y se conecta a tu VPS vía SSH. Lo único que se configura en el servidor son Docker y Caddy para el runtime de tu aplicación.
-
Ya uso docker-compose. ¿Cómo paso a Neo? Ejecuta
neo config generateen el directorio de tu proyecto. Neo escaneadocker-compose.ymly genera automáticamente.neo.yml, luego puedes usarneo deploypara desplegar la app. -
¿Qué proveedores de nube son compatibles? Neo puede desplegar en cualquier VPS con acceso SSH, como DigitalOcean, Hetzner, Linode, Vultr, AWS EC2, GCP y Azure. Neo despliega en una sola VM (no es un orquestador de clústeres multinodo como Kubernetes o Docker Swarm).
-
¿Cómo funciona HTTPS? Neo soporta
neo domain --temppara HTTPS instantáneo vía sslip.io,neo domain app example.compara auto-SSL de Let’s Encrypt tras apuntar el DNS, y--cert/--keypara usar tu propio certificado. -
¿Puede Neo ejecutar workers en segundo plano y bases de datos? Los workers se declaran en
.neo.ymly se despliegan como contenedores separados con la misma imagen, variables de entorno y volúmenes. Para bases de datos, Neo puede ejecutarlas como sidecars/servicios Docker para proyectos pequeños; para producción con usuarios reales, recomienda bases de datos gestionadas.
Alternativas
- Scripts manuales de despliegue Docker + Caddy: Si prefieres control total y ya tienes tu propia automatización de despliegue, puedes construir y transferir imágenes, ejecutar contenedores y gestionar Caddy/SSL tú mismo. Esto suele requerir más esfuerzo de configuración que el flujo de un solo comando de Neo.
- Docker Swarm o Kubernetes: Son orquestadores de clúster para despliegues multinodo. Difieren de Neo al enfocarse en orquestación entre clústeres en lugar de un solo VPS accesible por SSH.
- Otras pipelines CI/CD centradas en VPS: Puedes usar herramientas CI/CD genéricas para conectarte por SSH a un servidor, construir imágenes y reiniciar contenedores. Comparado con Neo, tendrías que manejar tú la generación de config, lógica de swaps sin downtime y integración HTTPS.
- Plataformas de contenedores gestionadas: Plataformas que gestionan enrutamiento y TLS pueden reducir pasos de infraestructura. Suelen sacrificar el modelo de despliegue “SSH-first, sin agente/control plane” descrito para Neo.
Alternativas
Falconer
Falconer es una plataforma de conocimiento autoactualizable para equipos ágiles: escribe, comparte y encuentra documentación interna y contexto de código en un solo lugar.
OpenFlags
OpenFlags es un sistema de feature flags open source y autohospedado con control plane y SDKs para evaluaciones locales y rollouts progresivos.
skills-janitor
skills-janitor audita y registra el uso de tus habilidades de Claude Code, comparándolas con 9 acciones de slash y sin dependencias.
Rectify
Rectify es una plataforma de operaciones todo en uno para SaaS: supervisión, analíticas, soporte, roadmaps, changelogs y gestión de agentes en un espacio visual.
GitBoard
GitBoard es una app nativa de la barra de menús en macOS para GitHub Projects: ve tu kanban, filtra por estado, busca issues y crea/asigna.
Studio CLI
Controla las funciones de WordPress Studio desde la terminal con Studio CLI: gestiona sitios locales y crea/actualiza/elimina previsualizaciones en WordPress.com.