Loading...

Entornos

Entornos blue/green (preprod ⇄ prod)

Ejecuta una copia preprod de tu aplicación, pruébala el tiempo que necesites sin tocar producción, y luego cambia el dominio en vivo a ella al instante, revirtiendo igual de rápido.

Volver a la Ayuda de la Plataforma

Cómo funciona

  • Un proyecto tiene dos entornos: prod (en vivo) y preprod. Cada uno es una app normal con su propio subdominio de prueba ca-*.cdn.com.tr.
  • Promote mueve tu dominio de producción de prod a preprod en segundos, sin tiempo de inactividad; Rollback lo devuelve igual de rápido.
  • En la pestaña Platforms de la cuenta → Managed Container Apps, el panel "Entornos Blue/Green" (justo encima de Tus apps) tiene Create preprod, Promote y Rollback.

Crea y prueba un preprod

  • Haz clic en "Create preprod" en tu app de prod: clona la imagen, env, secrets, recursos y health check en una nueva app preprod.
  • Despliega la app preprod y pruébala en su propio subdominio el tiempo que necesites; producción queda intacta.
  • Cuando esté lista, haz clic en Promote para ponerla en vivo; si algo falla, Rollback vuelve a la app anterior al instante.
  • Si el repositorio está conectado con auto-deploy, prefiere el Deployment pipeline: cada push despliega Staging automáticamente y los cambios en producción solo ocurren al hacer Promote (consulta la guía "Deployment pipeline").

Estado (BD y estáticos) y reversibilidad

  • shared: preprod usa la misma BD/Redis gestionada y los mismos buckets de object storage que prod (sin copia). Ideal para cambios de código/UI.
  • clone: preprod obtiene su propia MySQL gestionada con una copia de los datos de prod, seguro para cambios de datos/esquema.
  • isolated: preprod empieza limpio.
  • Promote toma primero un snapshot automático de la BD; Rollback lo restaura, así los cambios de datos también son reversibles. El estático en volumen persistente puede compartirse (RWX) para mantener los uploads consistentes.

Crear y probar un preprod

  • Elige un modo de estado y haz clic en Create preprod (una sola app, o "from all apps" para toda la cuenta). Clona la imagen, entorno, secretos, recursos y health check de cada app en una nueva app de preprod.
  • Despliega la(s) app(s) de preprod y pruébalas en sus propios subdominios ca-* durante el tiempo que necesites — producción permanece activa e intacta todo el tiempo.
  • Cuando esté listo, haz clic en Promote; si algo se ve mal después de salir a producción, haz clic en Rollback y el tráfico vuelve a las apps anteriores al instante.

Estado (BD y estáticos) — qué comparte preprod con producción

  • shared (por defecto): preprod usa la MISMA base de datos/Redis administrada y los mismos buckets de object storage que producción, mediante referencias seguras entre apps (sin copia). Ideal para cambios de código/UI.
  • clone: preprod obtiene su PROPIO MySQL administrado con una copia de los datos de producción — seguro para probar cambios de datos o esquema; los datos de producción quedan intactos. (La copia de datos de Postgres aún no es compatible — empezaría vacía.)
  • isolated: preprod comienza limpio, con sus propios add-ons nuevos.
  • Los archivos estáticos en un volumen persistente pueden compartirse (CephFS RWX) para que las subidas se mantengan consistentes entre entornos.

Reversibilidad y límites

  • Tráfico — con tu propio dominio conectado: Promote conecta primero el dominio a la nueva app y luego libera la anterior (sin interrupciones); Rollback es el mismo cambio a la inversa — segundos, no una reconstrucción.
  • Tráfico — producción solo en su subdominio ca-*.cdn.com.tr: Promote despliega la imagen de Staging ya probada en la app de producción con una actualización continua sin interrupciones (el pod anterior sigue sirviendo hasta que el nuevo esté listo). Las URLs permanecen estables; la configuración (entorno/secretos) intencionalmente no se traslada con la imagen.
  • Datos: Promote toma primero una instantánea automática de la base de datos, y Rollback la restaura, de modo que los cambios de datos realizados tras salir a producción también pueden revertirse.
  • Alcance: todo ocurre dentro de una misma cuenta, por lo que la propiedad del DNS y el certificado de producción nunca se ven afectados.
  • Aún no disponible: promoción entre cuentas, copia de datos de Postgres al clonar y una promoción transaccional totalmente atómica en muchas apps a la vez (se realiza de forma best-effort por app, con reporte de errores por app).