Lista Exhaustiva para Despliegues Sin Paradas con Docker & Nginx Es importante destacar que la traducción de términos técnicos se debe hacer con precisión y cuidado, por lo tanto es recomendable consultar la documentación oficial en inglés o consultar a un especialista en el tema. En este caso, "Ultimate" significa "Máximo" o "Excepcional", mientras que "Checklist" se traduce como "Lista de comprobaciones". "Zero-Downtime Deploys" es una expresión técnica que significa "Despliegues sin tiempo d

Guía práctica sobre despliegues sin tiempo de inactividad utilizando el patrón blue-green centrado en Docker y Nginx como proxy inverso, manteniendo a los usuarios ajenos a cualquier cambio. Incluye un pipeline CI CD recomendado con GitHub Actions y buenas prácticas de despliegue.

2 oct 2025 • 5 min read • Q2BSTUDIO Team

inteligencia-artifial-software-aplicaciones

Introducción Zero-downtime o despliegues sin tiempo de inactividad es una expectativa imprescindible para servicios modernos. Como responsable DevOps sabes la sensación de emergencia cuando una nueva versión deja la web inaccesible por unos segundos. En esta guía práctica describimos un patrón blue-green centrado en Docker y con Nginx como proxy inverso que mantiene a los usuarios ajenos a cualquier cambio.

Resumen del enfoque La idea central es sencilla Cuando conviven dos entornos idénticos blue entorno en producción y green la próxima versión Nginx enruta el tráfico al entorno activo y un trabajo de CI invierte el upstream una vez que los contenedores green superan las comprobaciones de salud.

Requisitos previos Un host compatible con Docker (VM Linux, instancia AWS EC2 o máquina local). Nginx instalado como proxy inverso en el mismo host o en un bastión separado. Repositorio Git en GitHub GitLab o Bitbucket. Familiaridad básica con Dockerfiles docker compose y una plataforma CI como GitHub Actions GitLab CI o CircleCI. Recomendación mantener Docker Engine en la versión 20.10 y Nginx en 1.21 para compatibilidad con los ejemplos.

Versionado de imágenes Docker Cada commit que modifique el Dockerfile debe producir una etiqueta semántica por ejemplo v1.2.3. Inyecta la SHA de Git usando etiquetas en la imagen para que las reversión sean trazables. En el pipeline CI exporta variables como GIT_TAG y GIT_SHA y etiquetado para poder ejecutar yourapp:1.4.0 en green y conservar yourapp:1.3.9 en blue.

Configuración de proxy con Nginx Concepto clave definir dos upstreams blue y green y variable de selección. Ejemplo mínimo descriptivo upstream blue servidor 127.0.0.1 puerto 3001 upstream green servidor 127.0.0.1 puerto 3002 usar la directiva map para asignar la variable $upstream por defecto blue y permitir que el CI altere ese valor a green cuando sea seguro reenviar tráfico. Al completar la implantación el job de CI actualiza la variable o la cabecera X-Deploy-Target y hace un nginx -s reload. Para revertir basta con volver a blue.

Pipeline CI CD Flujo recomendado con GitHub Actions pero aplicable a otras plataformas. Fases build y deploy. El job de build genera metadata etiquetas semver y SHA y publica la imagen en el registro. El job de deploy SSH al host extrae la imagen docker pull yourorg/yourapp GIT_TAG ejecuta la nueva instancia en puerto 3002 realiza un bucle de health check con curl a http localhost 3002 health hasta que responda 200 luego modifica el bloque map en la configuración de Nginx para cambiar default blue por default green y recarga Nginx. Mantén un periodo de gracia con la antigua instancia ejecutándose para permitir rollback manual fácil; finalmente puedes parar y renombrar contenedores para preparar el siguiente ciclo.

Comprobaciones de salud y conmutación La aplicación debe exponer un endpoint ligero /health que devuelva 200 solo cuando todas las dependencias internas base de datos caché APIs externas estén disponibles. Un bucle de predespliegue con curl evita que Nginx reciba tráfico hacia una versión no sana. Nginx puede realizar sus propias comprobaciones activas pero validar antes del cambio reduce riesgos.

Rollback Si green falla tras la conmutación tienes dos opciones Manual volver a editar por SSH la línea del map a default blue recargar Nginx y reiniciar el contenedor antiguo. Automático extender el workflow con una etapa post que monitorice los primeros minutos de tráfico mediante alertas Prometheus y dispare la reversión si se detectan errores.

Observabilidad y registros Cero downtime no es solo enrutamiento necesita visibilidad. Usa logs estructurados formato JSON por ejemplo con pino para Node y envía registros a una solución centralizada como Loki o Elastic Stack. Exporta métricas Prometheus desde ambas instancias en /metrics y crea dashboards en Grafana comparando blue vs green. Si dispones de tracing distribuido Jaeger u OpenTelemetry etiqueta los spans con la versión desplegada para correlacionar picos de latencia con releases.

Buenas prácticas de despliegue Etiquetas semánticas y SHA en la imagen para trazabilidad. Script de health check automatizado antes de cambiar upstream. Periodo de gracia corto para rollback manual. Evitar reinicios completos de Nginx usar nginx -s reload siempre que sea posible. Documentar pasos de rollback y opcionalmente automatizarlos.

Integración con servicios profesionales Si buscas apoyo para implementar esta estrategia, Q2BSTUDIO ofrece servicios de desarrollo de software a medida y despliegues fiables. Somos especialistas en aplicaciones a medida inteligencia artificial ciberseguridad servicios cloud aws y azure y soluciones de inteligencia de negocio. Para proyectos de desarrollo de aplicaciones a medida o migraciones cloud visita nuestra página de servicios cloud servicios cloud AWS y Azure.

Checklist definitiva Infraestructura mantener Docker Engine 20.10 en el host Nginx con upstreams blue y green claves SSH en secretos de CI. CI CD versionado semántico en etiquetas Docker health check automatizado antes del switch periodo de gracia para rollback. Nginx usar map para alternar upstream recargar con nginx -s reload. Observabilidad endpoint /health fiable logs centralizados métricas Prometheus y dashboards en Grafana tracing con etiquetas de despliegue. Plan de rollback pasos manuales documentados y opción de rollback automático por alertas.

Conclusión Tratar el proceso como código hace que los despliegues sin tiempo de inactividad sean repetibles versiona imágenes Docker mantén configuraciones Nginx declarativas y automatiza el pipeline de CI para minimizar intervenciones humanas. Sigue la checklist antes de cada merge a main y reducirás las regresiones de emergencia a casi cero. Si necesitas ayuda para implantar esta arquitectura o para servicios en inteligencia artificial ciberseguridad o automatización de procesos contacta con nuestro equipo en Q2BSTUDIO.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.