Imágenes, volúmenes y redes

Por: Artiko
portainerdockerimagenesvolumenesredes

Imágenes, volúmenes y redes

Tres recursos que sostienen a todo contenedor: de dónde sale (imágenes), dónde guarda sus datos (volúmenes) y cómo se comunica (redes). Portainer expone los tres con sus propias secciones.

Imágenes

La sección Images lista las imágenes presentes en el host, con su tamaño, tags y antigüedad.

Pull

Para descargar una imagen indicás repositorio:tag (ej. nginx:alpine) y el registry de origen (Docker Hub por defecto, o uno privado del capítulo 8). Portainer ejecuta el docker pull.

Build

Build a new image te deja construir desde:

Le das uno o varios tags y Portainer corre el build en el host.

Import / Export

Limpieza

Las imágenes se acumulan. Portainer marca las unused (sin contenedor que las use) y permite borrarlas. Tené cuidado con el borrado forzado: una imagen “no usada” ahora puede ser la base de un build futuro.

Tip: una imagen “dangling” (<none>:<none>) suele ser una capa huérfana de un rebuild. Es seguro limpiarlas periódicamente.

Volúmenes

Los volúmenes son el mecanismo de Docker para persistir datos fuera del ciclo de vida del contenedor. La sección Volumes los lista con su driver y punto de montaje.

Crear y usar

Creás un volumen con nombre y, al desplegar un contenedor o stack, lo montás en una ruta (ej. postgres_data/var/lib/postgresql/data). Aunque borres y recrees el contenedor, los datos persisten en el volumen.

El agent de Portainer habilita el Browse de un volumen: explorás sus archivos, subís y descargás desde la UI sin tocar el host. Es muy práctico para inspeccionar configuraciones o recuperar un archivo. (Requiere el agent; en el entorno local conectado solo por socket puede no estar disponible.)

Volúmenes vs bind mounts

Volumen con nombreBind mount
GestiónDocker/PortainerVos (ruta del host)
PortabilidadAltaAtado al host
Caso típicoDatos de apps (DB, uploads)Config del host, código en dev

Para datos de producción preferí volúmenes con nombre.

Redes

La sección Networks gestiona cómo se comunican los contenedores.

Tipos de red

Crear una red custom

Lo habitual es crear una bridge custom por aplicación. Ventaja clave: dentro de una bridge custom, los contenedores se resuelven por nombre vía el DNS interno de Docker (ej. la app llega a la base de datos como db:5432). En la bridge por defecto eso no funciona.

Conectar y desconectar

Desde el detalle de una red ves qué contenedores están conectados, y podés conectar/desconectar contenedores en caliente. Un contenedor puede pertenecer a varias redes a la vez (ej. una red frontend y otra backend).

Buena práctica de segmentación: poné el reverse proxy y la app en una red, y la app y la base de datos en otra. Así la base de datos nunca queda expuesta a la red del proxy. Esto se declara naturalmente en un stack de Compose.


AnteriorCapítulo 4: Contenedores · SiguienteCapítulo 6: Stacks y Compose