App Templates
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:
- Elegís una plantilla (ej. un servidor web o una base de datos).
- Completás los campos expuestos: nombre, puerto, variables, volumen.
- 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.
Anterior → Capítulo 6: Stacks y Compose · Siguiente → Capítulo 8: Registries