Gestión de contenedores
Gestión de contenedores
La sección Containers es donde más vas a vivir al principio. Replica todo lo que harías con la CLI de Docker, pero con formularios y vistas en tiempo real.
La lista de contenedores
Muestra todos los contenedores del entorno con su estado, imagen, puertos publicados y uso de recursos. Desde la barra de acciones podés Start / Stop / Restart / Kill / Pause / Remove uno o varios a la vez seleccionándolos con los checkboxes.
Crear un contenedor
Containers → + Add container abre un formulario que cubre las opciones de docker run:
- Name e Image (con el registry de origen).
- Port mapping: publicás puertos host→contenedor.
- Advanced container settings, en pestañas:
- Command & logging: comando/entrypoint, driver de logs.
- Volumes: montás volúmenes con nombre o bind mounts.
- Network: red a la que se conecta, hostname, DNS.
- Env: variables de entorno.
- Labels: etiquetas de metadatos.
- Restart policy:
no,always,on-failure,unless-stopped. - Runtime & resources: límites de CPU y memoria, capabilities.
Al confirmar Deploy the container, Portainer ejecuta el equivalente a tu docker run y el contenedor aparece en la lista.
Tip: para algo más que un par de contenedores sueltos, no uses este formulario. Definí un stack de Compose (capítulo 6): es versionable, reproducible y mucho más fácil de mantener.
Operar un contenedor
Al hacer clic en un contenedor entrás a su detalle, con acciones potentes:
Logs
Vista de logs en vivo con auto-refresh. Podés:
- Activar/desactivar timestamps.
- Filtrar por texto.
- Ajustar cuántas líneas traer.
- Copiar o descargar el log.
Equivale a docker logs -f, pero en el navegador.
Console (exec)
Abre una terminal interactiva dentro del contenedor, eligiendo el comando (/bin/sh, /bin/bash) y el usuario. Es el equivalente a docker exec -it <id> sh. Ideal para inspeccionar archivos o depurar sin SSH al host.
Stats
Gráficas en tiempo real de CPU, memoria, red y I/O de disco del contenedor. Útil para detectar un servicio que consume de más.
Inspect
Muestra el JSON completo de docker inspect: configuración, montajes, red, estado. Para cuando necesitás el detalle crudo.
Recreate
Acción muy usada: Recreate vuelve a crear el contenedor con la misma configuración. Con la opción Re-pull image activada, primero baja la última versión de la imagen y luego recrea — la forma rápida de actualizar un contenedor suelto a la imagen más reciente.
Duplicar / Edit
Duplicate/Edit abre el formulario de creación precargado con la configuración del contenedor actual. Cambiás lo que necesites (ej. una variable o un puerto) y desplegás: Portainer reemplaza el contenedor por la versión editada. Es la manera de “modificar” un contenedor, ya que en Docker los contenedores son inmutables.
Attach a un proceso y modo “exec” vs “attach”
- Console crea un proceso nuevo dentro del contenedor (exec). Es lo que casi siempre querés.
- Algunos contenedores conviene verlos con Attach al proceso principal, pero para depurar,
execcon una shell es lo habitual.
Buenas prácticas
- Definí restart policy explícita (
unless-stoppedpara servicios) para que sobrevivan reinicios. - Poné límites de memoria/CPU a contenedores no confiables o pesados.
- No guardes estado en el sistema de archivos del contenedor: usá volúmenes (capítulo 5).
- Para cualquier app con más de un contenedor o que quieras versionar, salta a stacks.
Anterior → Capítulo 3: Interfaz y entornos · Siguiente → Capítulo 5: Imágenes, volúmenes y redes