Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian

Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian

por Raúl Unzué

Podman vs Docker

Llevo años trabajando y escribiendo sobre Docker, pero existen otros proyectos que también se están usando mucho en entornos profesionales o de desarrollo. Uno de ellos es Podman, y hoy voy a intentar mostraros en qué consiste, qué diferencias existen con respecto a Docker, y cómo podemos montarlo bajo Proxmox en una máquina virtual.

Antes de ir al grano, comentar que Podman, como Docker, es un motor de contenedores de código abierto desarrollado o impulsado por Red Hat.

Qué cambia respecto a Docker

Una de las ventajas de usar Podman es que casi todos los comandos son los mismos (ps, run, exec, logs, images...). Así que no tendrás que empezar de cero para usarlo.

Lo que sí cambia:

  • En Docker disponemos un demonio "dockerd", que si cae, caen todos los contenedores que están corriendo en el sistema. En Podman ese punto de fallo único no existe, cada contenedor lo lanza cada usuario.
  • Otra diferencia es que un usuario normal, ejecuta contenedores usando "user namespaces", con lo que, a nivel de seguridad, un proceso comprometido dentro del contenedor no es root en el host. Esto reduce bastante el daño posible a tu infraestructura.
  • Ambos usan imágenes OCI de registros públicos como "Docker Hub", pero Podman te solicitará el nombre completo, lo que lo hace más seguro. Para que entendáis la diferencia os muestro un ejemplo de como lanzaríamos un contenedor:
    • Docker: "docker run -d nginx"
    • Podman: "podman run -d docker.io/library/nginx:alpine"

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 1

Crear máquina virtual en Proxmox para Podman

Para poder "correr" contenedores y montar nuestro servidor Podman, usaremos una máquina virtual Debian bajo Proxmox, en vez de un contenedor LXC.

Así que creamos nuestra máquina virtual con estos valores:

  • Para sistema operativo usaré Debian 13, que trae alguna ventaja adicional que por ejemplo, Debian 12 (por ejemplo, la herramienta Quadlet):

    Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 2

  • Mínimo 2 vCPU, 2 GB de RAM y 16-32 GB de disco
  • Para la CPU, el tipo debemos elegir "host":

    Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 3

  • Para poder trabajar con el servidor necesitaremos habilitar SSH
  • Usaremos un usuario normal para que ejecute los contenedores
  • Instalaremos adicionalmente las QEMU Guest Agent (VMware Tools de Proxmox):
    su -apt update && apt upgrade -yapt install -y qemu-guest-agent
     systemctl enable --now qemu-guest-agent

Con esto tenemos preparada nuestra máquina virtual para realizar la instalación de Podman.

Instalar Podman en Debian 13

Nos conectamos a nuestro servidor vía SSH con el usuario "normal":

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 4

Cambiamos al usuario "root":

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 5

Actualizamos el sistema antes de hacer la instalación:

apt update && apt upgrade -y

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 6

Lanzamos el siguiente comando:

apt install -y podman podman-compose uidmap

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 7

Con el servidor instalado, vamos a realizar varias comprobaciones posteriores:

Comprobar permisos usuario para Podman

Para lanzar los contenedores, usuarios el usuario "normal" (no root), pero para ello debemos validar que tiene rangos de UID/GID subordinados, ya que si sale vacío Podman no podrá mapear usuarios y fallará al arrancar el primer contenedor:

grep elblogdenegu /etc/subuid /etc/subgid

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 8

Evitar parada de contenedores al cerrar sesión SSH

Lanzaremos el siguiente comando para evitar que los contenedores se paren si los lanzamos bajo una sesión SSH:

loginctl enable-linger elblogdenegu

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 9

Comprobar estado Podman

Ahora con el usuario "normal" revisamos el estado de Podman:

podman info | grep -i rootless

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 10

Debe devolver:

rootless: true

 

Lanzar primer contenedor Podman

Para primer contenedor, lanzaremos un contenedor Nginx con el siguiente comando:

podman run -d --name mi-web -p 8080:80 docker.io/library/nginx:alpinepodman ps

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 11

Comprobaremos desde otro equipo de la red el acceso a la IP de la máquina virtual por el puerto 8080 (http://IP-DE-LA-VM:8080):

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 12

Podemos revisar los logs si tenemos algún problema o queremos tener más detalle:

podman logs mi-web

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 13

Para parar y borrar el contenedor, usaremos:

podman stop mi-webpodman rm mi-web

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 14

 

Quadlet: Contenedores arrancados en el reinicio

Hemos visto cómo hacer que los contenedores sobrevivan a un cierre de sesión, ahora debemos estar preparados para que la máquina virtual se reinicie, y vuelva a correr contenedores. Algo útil si trabajas en producción.

Lanzamos los siguientes comandos:

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 15

Con el siguiente contenido:

[Unit]Description=Nginx de prueba[Container]Image=docker.io/library/nginx:alpine
 PublishPort=8080:80[Service]Restart=always[Install]WantedBy=default.target

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 16

Y lo activamos con los siguientes comandos:

systemctl --user daemon-reloadsystemctl --user start mi-web
 systemctl --user status mi-web

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 17

Lo validamos reiniciando la máquina virtual:

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 18

Y volvemos a comprobar con "podman ps":

Geeknetic Cómo instalar Podman, alternativa a Docker, en Proxmox VE usando una máquina virtual Debian 19

Podman o Docker en la empresa

La pregunta que se hace una empresa, y es lo más normal, casi nunca es cuál de los dos es mejor, sino qué le cuesta cambiar y qué gana a cambio.

Y la respuesta cambia según de dónde partas:

  • Si ya tienes Docker en producción y funciona, no migraría por ser la "novedad". Un parque de servidores con Compose, pipelines de CI montados y un equipo que lo domina tiene un valor que no sale en ninguna comparativa. Migrar cuesta pruebas, formación e incidencias raras, y el beneficio tiene que ser concreto, un requisito de seguridad que hoy no cubres o un gasto en licencias que ya no te compensa.
    • Para que os hagáis una idea con "datos", según Stack Overflow Developer Survey:
      • Podman ha aumentado significativamente su cuota de uso, que no era más de un 5% al 10% del mercado en 2025 y un 13% en 2026
      • Docker por el contrario, tenía una cuota del 71.1% en 2025 y ahora mismo está en un 59.1%
  • Si estás montando una plataforma nueva sobre servidores Linux, empezaría por Podman. Con Quadlet, los contenedores son servicios de systemd normales, se arrancan, se vigilan y se registran con las mismas herramientas con las que ya administras el resto de la máquina.

    No hay un demonio central ni un socket con privilegios de root que proteger. En entornos con RHEL y derivadas, además, es la opción que trae soporte oficial, y eso en una auditoría pesa más de lo que parece.

Docker conserva ventaja en el escritorio del desarrollador y en el ecosistema. Muchas herramientas asumen el socket de Docker, y Docker Desktop sigue siendo la experiencia más cómoda en Windows y macOS. Pero ojo con su licencia, es de pago a partir de cierto tamaño de empresa (250 empleados o 10 millones de dólares de facturación, según las condiciones que conozco). Docker Engine en Linux sigue siendo software libre, así que el coste aparece en los puestos de trabajo, no en los servidores.

Docker también ha evolucionado, y por ejemplo, también tiene modo rootless. La diferencia es que en Podman está por diseño y en Docker es una configuración añadida con ciertas limitaciones.

En mi opinión, en servidores Linux nuevos, Podman. En equipos de desarrollo con flujos de Docker consolidados, Docker, y valorar Podman Desktop solo si la licencia es un problema real (cosa poco probable por el volumen de la empresa media española).

Sinceramente, antes de decidir, habría que probar con una aplicación de verdad. Los permisos, el almacenamiento y las herramientas que dependen del socket son los que te dirán si el cambio compensa.

Fin del Artículo. ¡Cuéntanos algo en los Comentarios!

Redactor del Artículo: Raúl Unzué

Raúl Unzué

Soy un apasionado de la virtualización con más de 20 años de experiencia, especializado en soluciones como VMware(premio vExpert y vExpert Pro desde 2013), Proxmox e Hyper-V. Durante mi carrera, he ayudado a empresas a optimizar sus infraestructuras TI mientras comparto mis conocimientos como redactor IT. Mi objetivo es traducir lo complejo en algo práctico y accesible, combinando teoría con experiencia real. Si te interesa la virtualización, las herramientas TI o simplemente aprender algo nuevo, espero ayudarte con mis artículos.