GNU/Linux >> Tutoriales Linux >  >> Panels >> Docker

diferencia entre podman y docker.

¿Qué es Podman y cuál es la diferencia con Docker?

Podman es un motor de contenedores compatible con contenedores OCI que también forma parte de RedHat Linux, pero también se puede instalar en otras distribuciones de Linux.

Como es compatible con OCI, Podman se puede usar como un reemplazo directo para el tiempo de ejecución de Docker más conocido. La mayoría de los comandos de Docker se pueden traducir directamente a comandos de Podman.

¿Qué es un tiempo de ejecución?

Para muchas personas, Container Engine es Docker, pero esto no representa el mundo de Container Engines en este momento, pero hay muchos Container Engines como Podman.

Como resultado, Podman y Docker tienen una funcionalidad básica. Cada uno produce imágenes que el otro puede usar para operar los contenedores. Luego, los dos tiempos de ejecución agregan sus propias especialidades además de las funciones básicas de creación de contenedores.

Instalar Podman

Si está usando Red Hat Enterprise Linux 8, Podman está en el repositorio local y puede instalarlo simplemente usando yum.

yum -y install podman

La mayoría de las demás distribuciones de Linux incluyen Podman en sus repositorios predeterminados

Cómo trabajar con Contenedores e Imágenes ?

Podman tiene varias similitudes con Docker en sus comandos de ejecución, como

1-Cómo extraer imagen

podman pull my-image:latest

2- Cómo ejecutar la imagen

podman run my-image:latest --name my-container

Lista de 3 contenedores creados y en ejecución

podman ps

4-Cómo retirar el contenedor

podman rm my-container

diferencia entre Podman y docker

Docker es una tecnología de gestión de contenedores. Podman es también una tecnología de contenedores. Puede usar cualquiera de los dos para crear imágenes de contenedores y almacenar esas imágenes en un repositorio. También puede usar Docker o Podman para extraer imágenes de contenedores de un registro y luego ejecutarlas en un entorno de destino

Sin embargo, las tecnologías tienen diferencias. Primero, mientras que Docker tiene un demonio subyacente, Podman usa una tecnología ligeramente diferente para crear contenedores. En segundo lugar, Podman, como su nombre lo indica, permite a los usuarios crear pods. Un pod es una forma de agrupar contenedores bajo un nombre organizativo común. Docker no admite pods. Hay otras diferencias sutiles, pero en un nivel alto, estas dos diferencias son las más pronunciadas

1-Contenedores sin raíz

Los contenedores sin raíz se refieren a la capacidad de un usuario sin privilegios para crear, ejecutar y administrar contenedores.

"Usuario sin privilegios" en este contexto se refiere a un usuario que no tiene ningún derecho administrativo

instalar slirp4netns:

yum install slirp4netns

configurar una cantidad de espacios de nombres de red con ámbito de usuario:

echo "user.max_user_namespaces=28633" > /etc/sysctl.d/userns.conf
sysctl -p /etc/sysctl.d/userns.conf

ahora puede ejecutar un contenedor sin raíz como usuario normal simplemente conéctese al servidor como usuario.

cuando inicie un nuevo contenedor con podman run, se creará con el UID de su cuenta de usuario en lugar de root

vainas

Cápsulas son las unidades informáticas implementables más pequeñas que puede crear y administrar, que se parecen a los pods de kubernetes.

pod crear:

podman pod create --name my-pod

añadir contenedor a pods:

podman run --pod my-pod --name image-1 my-image:latest

puede administrar el contenedor en los pods:

podman kill my-pod     #  kill all containers


podman restart my-pod  # restart all containers
           

podman stop my-pod  #stop all containers

Conclusión

en conclusión, podman es un motor de contenedor como docker que tiene muchas similitudes, como cómo extraer imágenes, ejecutar imágenes. pero tienen muchas diferencias como contenedor sin raíz y vainas


Docker
  1. ¿Cuál es la diferencia entre los contenedores LXC, LXD y Docker?

  2. ¿Cuál es la diferencia entre un contenedor de Linux y una imagen?

  3. Instalar Docker y WordPress en Ubuntu

  4. Diferencia entre Qemu y KVM

  5. diferencia entre cgroups y espacios de nombres

Cómo instalar y usar Podman (alternativa de Docker) en Ubuntu 20.04

La diferencia entre CMD y ENTRYPOINT en Docker Images

Cómo usar Docker Cp para copiar archivos entre el host y los contenedores

Cómo implementar y administrar un contenedor Docker MongoDB

Docker Run vs Start vs Create:diferencia explicada

Cómo copiar archivos entre el host y el contenedor Docker