App Templates

Por: Artiko
portainertemplatesdockerself-hosting

App Templates

Las App Templates son despliegues pre-configurados. En vez de escribir un Compose desde cero, elegís una plantilla, completás un par de campos y desplegás. Hay dos clases: las integradas y las personalizadas que creás vos.

Plantillas integradas

App Templates en el menú muestra un catálogo de servicios listos: bases de datos, servidores web, herramientas de productividad, etc. Cada plantilla define una imagen y unas opciones expuestas como formulario.

Flujo típico:

  1. Elegís una plantilla (ej. un servidor web o una base de datos).
  2. Completás los campos expuestos: nombre, puerto, variables, volumen.
  3. Deploy the container (o stack, si la plantilla es multi-servicio).

Es la vía más rápida para levantar algo conocido sin recordar su configuración.

El catálogo integrado por defecto apunta a una lista mantenida por Portainer. Podés reemplazarla por tu propia lista mediante una URL en Settings, lo que es habitual en organizaciones que quieren un catálogo curado.

Custom Templates

Acá está el valor real para un equipo: definir tus propias plantillas para estandarizar cómo se despliega cada cosa.

App Templates → Custom Templates → + Add Custom Template. Una custom template puede ser:

  • De tipo container o stack (Compose).
  • Definida desde el editor web, un archivo subido o un repositorio Git.

Le das título, descripción, ícono y plataforma (Docker/Swarm/K8s). A partir de ahí, cualquier usuario con acceso la despliega desde un formulario sin tener que conocer el YAML.

Variables en custom templates

Las plantillas soportan placeholders que se renderizan como campos del formulario al desplegar. Así definís una plantilla genérica (ej. “nuestra API estándar”) donde quien la usa solo elige el nombre del entorno, el tag de la imagen y poco más.

Plantillas desde Git

Una custom template puede apuntar a un Compose en un repositorio Git. Ventaja: la plantilla se mantiene como código. Cuando actualizás el Compose en el repo, la plantilla queda al día para todos.

Cuándo usar cada cosa

flowchart TD
    Q{"¿Qué querés desplegar?"} --> A["Algo conocido, una vez<br/>→ Plantilla integrada"]
    Q --> B["Un patrón repetible del equipo<br/>→ Custom Template"]
    Q --> C["Una app propia compleja<br/>y versionada → Stack desde Git"]
  • Plantilla integrada: prototipos, homelab, probar un servicio.
  • Custom template: estandarizar despliegues recurrentes para que cualquiera del equipo los lance bien.
  • Stack desde Git (capítulo 6): la app de producción seria, con GitOps.

Buenas prácticas

  • Curá un catálogo de custom templates para tu equipo: reduce errores y acelera el onboarding.
  • Documentá cada plantilla en su descripción (qué hace, qué variables pide).
  • Para apps críticas, preferí stacks desde Git sobre plantillas: tenés historial y revisión de cambios.

AnteriorCapítulo 6: Stacks y Compose · SiguienteCapítulo 8: Registries