Volver

Despliegue y dominios

Cómo funciona el ciclo build -> chequeo de salud -> corte de tráfico, y cómo usar un dominio propio.

El ciclo de un despliegue

sequenceDiagram
    participant Tu as Tú (panel)
    participant D as Dashboard
    participant O as Orquestador
    participant T as Traefik
    Tu->>D: Disparar despliegue
    D->>O: Solicitar build + activación
    O->>O: Construir imagen desde tu Dockerfile
    O->>O: Levantar contenedor candidato (sin tráfico)
    O->>O: Esperar chequeo de salud
    alt Salud OK
        O->>T: Conectar candidato a la red pública
        T-->>Tu: Nueva versión recibiendo tráfico
    else Salud falla
        O-->>D: Reportar fallo, versión anterior sigue activa
    end

Esto significa que un despliegue que falla nunca tumba la versión que ya está funcionando: el contenedor nuevo solo se conecta a Traefik después de pasar su chequeo de salud.

Subdominio automático

Por defecto tu aplicación queda disponible en:

https://<tu-instancia>.urrahosting.cl

Dominio propio

Si tu instancia tiene asignado un dominio personalizado (APP_CUSTOM_DOMAIN, lo configura el operador desde el panel de administración de UrraHosting), Traefik enruta ese dominio hacia tu aplicación en lugar del subdominio automático. El cambio aplica en el siguiente despliegue: no necesitas hacer nada más en tu código.

Requisitos de tu Dockerfile

  • Debe exponer tu aplicación en el puerto indicado por APP_PORT (te llega como variable de entorno, no lo fijes tú mismo en el código).
  • El contenedor final corre con read_only: true y cap_drop: ALL: si tu aplicación necesita escribir archivos, hazlo dentro del volumen de datos persistente de la instancia o en /tmp (tmpfs limitado).
  • No se aceptan archivos Compose en el repositorio o el paquete subido.

Bases de datos administradas

Si tu app necesita una base de datos, no declares una tú mismo: se aprovisiona desde el panel. Ver Conectar una base de datos.