¡Muy buenas! Soy Jero de JeroCuevas.com. En esta lección, vamos a sumergirnos en Portainer, la herramienta que nos permite gestionar de forma visual todas las aplicaciones que tenemos en nuestro servidor. Ya la hemos instalado en lecciones anteriores, así que ahora toca aprender a usarla y sacarle todo el partido.
¿Qué es Portainer y Por Qué es Tan Importante?
En pocas palabras, Portainer es un panel de control visual para Docker. Docker es la tecnología que nos permite instalar aplicaciones en «contenedores» aislados, haciendo que todo sea más limpio, ordenado y fácil de gestionar.
Portainer nos da una interfaz web para ver, administrar, actualizar y monitorizar todas estas aplicaciones sin tener que usar complejos comandos en la terminal. Es el centro de operaciones de nuestra infraestructura.
Al entrar con tu usuario y contraseña, verás el «environment» o entorno, que es tu servidor. Hacemos clic en él y entramos al panel principal.
Explorando las Secciones Clave de Portainer
En el menú de la izquierda, encontrarás varias secciones. Vamos a ver las más importantes.
1. Stacks (Pilas)
Un «Stack» es, básicamente, una aplicación instalada. En esta sección verás la lista de todo el software que has desplegado (n8n, Flowise, Supabase, etc.).
- ¿Qué puedes hacer aquí?
- Ver tus aplicaciones: Tienes una vista general de todo lo que está corriendo.
- Modificar la configuración: Si haces clic en un stack (por ejemplo, n8n), puedes ir a la pestaña
Editor
. Aquí verás sus variables de entorno, que son los ajustes de configuración de la aplicación. Puedes modificarlos y volver a desplegar el stack para aplicar los cambios. - Actualizar aplicaciones: Desde esta misma sección se pueden actualizar las aplicaciones a sus últimas versiones. (Tengo una lección específica sobre esto, ¡búscala!).
⭐ Pro Tip: Por defecto, Portainer solo muestra 10 stacks. Abajo, cambia la opción
Items per page
aAll
para verlo todo de un vistazo.
2. Containers (Contenedores)
Esta es la sección crítica, la que deberías revisar con más frecuencia. Un stack se compone de uno o más contenedores, que son las piezas en ejecución de la aplicación.
- Estados de los Contenedores:
- Verde (
running
): ¡Perfecto! El contenedor está funcionando correctamente. El objetivo es que todo esté siempre en verde. - Rojo (
exited
): El contenedor se detuvo o falló. ¡No te alarmes! Es normal que esto ocurra a veces, por ejemplo, durante una actualización o si un servicio intenta arrancar antes que otro del que depende. Lo bueno de Docker Swarm (la tecnología que usa Portainer) es que lo vuelve a levantar automáticamente, dejando el contenedor rojo como un «historial» del fallo.
- Verde (
- ¿Cómo investigar un fallo? Si un contenedor falla repetidamente, puedes hacer clic en el icono de
Logs
(parece un documento) para ver el registro de errores.🤖 Truco de IA: Si no entiendes el error, ¡copia el log, pégalo en ChatGPT y pregúntale! «Oye, ¿por qué ha fallado este contenedor con este error?». Te sorprenderá la ayuda que puede darte.
3. Images (Imágenes)
Las imágenes son las «plantillas» o los archivos de instalación a partir de los cuales se crean los contenedores.
- ¿Qué hay que vigilar aquí? Debes buscar imágenes que no se estén utilizando (
unused
). Estas suelen aparecer después de actualizar o desinstalar una aplicación. Son «residuos» que se pueden borrar sin miedo para liberar espacio en el servidor.
4. Volumes (Volúmenes)
Los volúmenes son como los «discos duros» de tus aplicaciones. Son las carpetas donde se guardan los datos de forma permanente (la base de datos de n8n, tus archivos de Flowise, etc.).
- ¿Qué hay que vigilar aquí? Al igual que con las imágenes, después de borrar un stack, puede quedar un volumen sin uso (
unused
). Estos volúmenes huérfanos también deben ser eliminados para mantener el servidor limpio.
Mantenimiento Automático con n8n (El Secreto para un Servidor Sano)
Revisar y limpiar logs, contenedores e imágenes a mano es un rollo. ¿La solución? ¡Automatizarlo con un workflow de n8n!
Aquí te dejo una rutina que se ejecuta una vez al día (a medianoche) para hacer el mantenimiento por ti:
- Trigger: Usa un nodo
Schedule
para que el workflow se activeuna vez al día
. - Paso 1: Limpiar Logs del Servidor:
- Usa el nodo
SSH
para conectarte a tu servidor (configura la credencial con la IP, puerto 22, usuarioroot
y tu contraseña). - Ejecuta un comando para borrar todos los logs de los contenedores. Esto libera mucho espacio y mantiene el sistema ágil.
- sudo find /var/lib/docker/containers/ -type f -name «*.log» -exec truncate -s 0 {} \;
- Usa el nodo
- Paso 2: Limpiar Docker:
- Usa otro nodo
SSH
con la misma credencial. - Ejecuta el comando: sudo docker system prune -af –volumes
- ¿Qué hace este comando? Es una limpieza a fondo. Borra automáticamente todos los contenedores parados, las redes que no se usan y las imágenes huérfanas.
- Usa otro nodo
Con esta simple automatización, tu servidor se mantendrá optimizado todos los días sin que tengas que mover un dedo.
Cómo Desinstalar una Aplicación Correctamente (El Proceso de 3 Pasos)
Si ya no necesitas una aplicación, no basta con borrar el stack. Para hacer una limpieza completa, sigue estos tres pasos:
- Borra el STACK:
- Ve a la sección
Stacks
, selecciona la aplicación que quieres quitar (ej: Flowise) y haz clic enRemove
.
- Ve a la sección
- Borra las IMÁGENES:
- Ve a
Images
. Busca las imágenes asociadas a la aplicación que acabas de borrar (Portainer te las marcará comounused
). Selecciónalas y haz clic enRemove
.
- Ve a
- Borra los VOLÚMENES:
- Finalmente, ve a
Volumes
. Localiza el volumen de la aplicación (también estará marcado comounused
), selecciónalo y bórralo.
- Finalmente, ve a
Recordar este orden (Stack → Imagen → Volumen) es clave para no dejar basura digital en tu servidor.
¡Y eso es todo! Ahora tienes un conocimiento completo de Portainer, no solo para gestionar tus aplicaciones, sino también para mantener tu servidor limpio y optimizado, tanto manual como automáticamente.
Nos vemos en las próximas lecciones. ¡Hasta luego!