Podman · 8 min read · Feb 11, 2026
Introducción a Podman: Gestionar Imágenes, Contenedores y Volúmenes

Podman es un entorno de ejecución de contenedores que proporciona características similares a Docker. Es parte de la biblioteca libpod y se puede usar para gestionar pods, contenedores, imágenes de contenedores y volúmenes de contenedores. Podman es muy diferente de Docker, que utiliza la arquitectura cliente-servidor y requiere un demonio de Docker para funcionar, mientras que Podman no requiere ningún demonio para ejecutarse y también puede funcionar sin privilegios de root.
En este tutorial, te mostraremos el uso básico de Podman para gestionar contenedores, imágenes y volúmenes, y crear imágenes de contenedores. Para completar esta guía, debes tener Podman instalado. Aquí hay guías para diferentes sistemas operativos:
- Cómo instalar Podman en Ubuntu 22.04
- Introducción a Podman (Alternativa a Docker) en Rocky Linux
- Cómo instalar y usar Podman (Alternativa a Docker) en Ubuntu 20.04
- Cómo instalar Podman como alternativa a Docker en Debian 11
Requisitos previos
- Servidor Ubuntu con Podman instalado
- Conocimientos básicos de Docker facilitarán el proceso
1. Comando básico de Podman
Después de instalar Podman en el sistema Ubuntu, debemos saber cómo verificar Podman en sí. Necesitamos comprobar la versión que ya está instalada en el sistema, el entorno del sistema Podman y el uso básico de ayuda.
Para obtener la versión instalada de Podman en la máquina, utiliza el siguiente comando.
podman versionCualquier versión de Podman > 1.0.1 será adecuada para esta guía.
Ahora verifica la configuración del entorno de Podman.
podman infoY se te mostrará el entorno del sistema de la instalación de Podman. Incluyendo la información de paquetes del host, registros y almacenamiento.

A continuación, ejecuta el siguiente comando para mostrar todas las opciones de comandos de Podman disponibles.
podman --helpPara mostrar ayuda para un comando específico, puedes usar como se indica a continuación.
podman pod help
2. Gestionar imágenes de contenedor usando Podman
Ahora pasamos a la gestión de imágenes de contenedor con Podman. Hay algunos comandos básicos que debes conocer relacionados con la gestión de imágenes de contenedor, incluyendo la búsqueda de imágenes, la descarga de imágenes, la visualización de imágenes disponibles en el sistema local y la eliminación de imágenes.
Ejecuta el comando a continuación para buscar una imagen.
podman search nginxEl comando buscará imágenes que contengan la palabra ‘nginx’ en todos los repositorios disponibles que ya están definidos en el archivo de configuración ‘/etc/containers/repositories.conf’.

Ahora descarga algunas imágenes usando los comandos ‘podman pull’ a continuación.
podman pull docker.io/library/nginx
podman pull docker.io/library/alpineUna vez que se complete, verifica todas las imágenes disponibles en la máquina del servidor.
podman imagesAhora tendrás las imágenes nginx y alpine en el sistema.

Para eliminar la imagen alpine, puedes usar la opción ‘rmi’ como se indica a continuación.
podman rmi alpine
Como resultado, solo tendrás la imagen de contenedor nginx en el sistema.
3. Gestionar contenedores
En esta etapa, aprendimos sobre la gestión de imágenes de contenedor. Y el siguiente paso, aprenderemos cómo crear y gestionar contenedores con Podman.
Para crear un nuevo contenedor, podemos usar el comando ‘podman run’ como se indica a continuación.
podman run -d -p 8000:80 --name hakase-nginx docker.io/library/nginxEl comando creará un nuevo contenedor llamado ‘hakase-nginx’ basado en la imagen nginx y expondrá el puerto 8000 en la máquina host.
Opciones de comando detalladas:
-d - mantiene el contenedor en ejecución en segundo plano y solo imprime el ID del contenedor como resultado.
-p 8000:80 - mapeo de puertos para el contenedor y el sistema host. Puerto 8000 en la máquina host y puerto 80 en el contenedor.
–name hakase-nginx - especifica el nombre del contenedor como ‘hakase-nginx’.
Ahora muestra todos los contenedores en ejecución en el sistema.
podman psY se te mostrará que el contenedor llamado ‘hakase-nginx’ está en funcionamiento.
Si deseas verificar todos los contenedores disponibles, puedes usar la opción ‘-a’.
podman ps -aAhora obtendrás todos los contenedores disponibles con diferentes estados.
Después de obtener todos los contenedores en ejecución en la máquina host, te mostraremos cómo verificar todos los procesos dentro del contenedor, adjuntarlo al contenedor en ejecución, y detener y eliminar el contenedor.
Para verificar el proceso dentro del contenedor en ejecución, utiliza el siguiente comando.
podman top hakase-nginxAhora, para adjuntarte y acceder al contenedor en ejecución, puedes usar el comando ‘exec’ como se indica a continuación.
podman exec -it hakase-nginx /bin/bashDentro del contenedor ‘hakase-nginx’, verifica la versión de nginx en él.
nginx -VObtendrás el resultado como se indica a continuación.

Ahora escribe ‘exit’ para salir del contenedor.
A continuación, detén el contenedor ‘hakase-nginx’.
podman stop hakase-nginxLuego elimina el contenedor.
podman rm hakase-nginx
Si deseas forzar la detención y eliminación del contenedor en ejecución, puedes usar la opción ‘-f’ para forzar.
podman rm hakase-nginx -f4. Gestionar volúmenes
Desde la versión 0.12, Podman tiene soporte para crear y gestionar volúmenes locales. Así que, si estás utilizando una versión anterior, no obtendrás este comando ‘podman volume’.
Ahora crea un nuevo volumen local usando el siguiente comando.
podman volume create hakase-volumeDespués de eso, muestra todos los volúmenes disponibles en el sistema.
podman volume lsY obtendrás el ‘hakase-volume’ en la lista.
Para verificar detalles sobre el volumen ‘hakase-volume’, podemos usar la opción ‘inspect’ como se indica a continuación.
podman volume inspect hakase-volumeY verás que el ‘mountPoint’ del volumen es el directorio local ‘/var/lib/containers/storage/hakase-volume/_data’.

Ve a ese directorio y crea un nuevo archivo index.html.
cd /var/lib/containers/storage/hakase-volume/_data
echo "Este es un índice personalizado y volumen - Hola Podman
" > index.htmlAhora crea un nuevo contenedor y monta el ‘hakase-volume’ en el contenedor.
podman run -d -p 8000:80 -v hakase-volume:/usr/share/nginx/html --name hakase-nginx docker.io/library/nginxUna vez creado el contenedor, verifica los volúmenes disponibles en el contenedor usando el siguiente comando.
podman inspect -f '{{ json .Mounts }}' hakase-nginx | jqEn la parte inferior del resultado, obtendrás el ‘hakase-volume’ en el contenedor.

A continuación, verifica la dirección IP del contenedor.
podman inspect -f '{{ .NetworkSettings.IPAddress }}' hakase-nginxAccede al contenedor en el puerto HTTP usando httpie.
http http://10.88.0.4/Y obtendrás el archivo index.html personalizado que se ha creado en el ‘hakase-volume’.

Ahora, si deseas eliminar el volumen, puedes usar la opción ‘rm’.
podman volume rm hakase-volumeY el ‘hakase-volume’ será eliminado.
5. Crear imágenes personalizadas con Commit
Ahora vamos a crear imágenes de contenedor personalizadas usando Podman. Básicamente, Podman te permite crear imágenes personalizadas basadas en el contenedor modificado o crear nuevas imágenes personalizadas usando el ‘Dockerfile’.
En esta sección, vamos a crear nuevas imágenes personalizadas basadas en el contenedor modificado a través del comando ‘podman commit’.
Descarga/extrae la imagen maestra ‘ubuntu’.
podman pull docker.io/library/ubuntuAhora ejecuta el contenedor basado en la imagen ubuntu. Y dentro del contenedor, ejecuta el comando ‘bash’ que actualizará los repositorios e instalará el paquete nginx.
podman run --name container-temp ubuntu bash -c "apt update && apt install -y nginx"Espera a que se complete la instalación de nginx dentro del contenedor.

Una vez que esté completo, crea una nueva imagen personalizada basada en el ‘container-temp’ usando el siguiente comando.
podman commit container-temp my-nginxA continuación, verifica las imágenes disponibles en el sistema.
podman imagesY obtendrás una nueva imagen llamada ‘my-nginx’ en la lista.

Si deseas ejecutar el contenedor basado en la imagen ‘my-nginx’, ejecuta el siguiente comando.
podman run -dt -p 8001:80 --name nginx01 my-nginx /usr/sbin/nginx -g 'daemon off;'Ahora verifica el contenedor en ejecución y verifica su dirección IP.
podman ps
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx01Y se te mostrará que el contenedor ‘nginx01’ está en funcionamiento. Después de eso, accede al puerto HTTP en el contenedor ‘nginx01’.
http -p h 10.88.0.19Como resultado, obtendrás la respuesta del encabezado HTTP como se indica a continuación.

6. Crear imágenes personalizadas con Dockerfile
Ahora vamos a crear una nueva imagen de contenedor personalizada usando el Dockerfile.
Crea un nuevo directorio de proyecto y crea un nuevo ‘Dockerfile’ dentro.
mkdir project; cd project/
vim DockerfilePega la siguiente configuración.
FROM ubuntu
# Instalar Nginx
RUN \
apt-get update && \
apt-get install -y nginx && \
rm -rf /var/lib/apt/lists/* && \
echo "\ndaemon off;" >> /etc/nginx/nginx.conf && \
chown -R www-data:www-data /var/lib/nginx
# Definir directorios montables.
VOLUME ["/etc/nginx/sites-enabled", "/etc/nginx/certs", "/etc/nginx/conf.d", "/var/log/nginx", "/var/www/html"]
# Definir el directorio de trabajo.
WORKDIR /etc/nginx
# Definir el comando predeterminado.
CMD ["nginx"]
# Exponer puertos.
EXPOSE 80
EXPOSE 443Guarda y cierra.
Ahora ejecuta el podman a continuación para construir una nueva imagen personalizada usando el Dockerfile.
podman build -t hakase-image .
Una vez que esté completo, verifica la nueva imagen en la máquina.
podman imagesY obtendrás la ‘hakase-image’.

A continuación, crea un nuevo contenedor basado en la ‘hakase-image’ ejecutando el siguiente comando.
podman run -d -p 8002:80 --name nginx02 hakase-imageDespués de eso, verifica el contenedor ‘nginx02’ y su dirección IP.
podman ps
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx02Asegúrate de que el contenedor ‘nginx02’ esté en funcionamiento.
Ahora verifica el contenedor usando la herramienta httpie.
http 10.88.0.21Y se te mostrará la página predeterminada de Nginx y su encabezado HTTP.

Finalmente, ahora puedes gestionar contenedores, imágenes y volúmenes usando Podman. Y puedes crear nuevas imágenes personalizadas para tu aplicación usando el Dockerfile.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.