GNU/Linux >> Znalost Linux >  >> Panels >> Docker

rozdíl mezi podmanem a dockerem.

Co je Podman a jaký je rozdíl od Dockeru?

Podman je kontejnerový engine kompatibilní s OCI kontejnery, který je také součástí RedHat Linuxu, ale lze jej nainstalovat i na jiné distribuce Linuxu.

Protože je kompatibilní s OCI, lze Podman použít jako náhradu za známější runtime Docker. Většinu příkazů Dockeru lze přímo přeložit na příkazy Podman.

Co je to runtime?

Pro mnoho lidí je Container Engine Docker, ale to v současnosti nepředstavuje svět kontejnerových motorů, ale existuje mnoho kontejnerových motorů, jako je Podman.

Díky tomu mají Podman a Docker základní funkce. Každý vytváří obrázky, které může druhý použít k ovládání kontejnerů. Tyto dva běhové moduly pak k základním funkcím kontejnerizace přidávají své vlastní specializace.

Nainstalujte Podman

Pokud používáte Red Hat Enterprise Linux 8, Podman je v místním úložišti a můžete jej nainstalovat pouhým použitím yum.

yum -y install podman

Většina ostatních distribucí Linuxu obsahuje Podman ve svých výchozích repozitářích

Jak pracovat s kontejnery a obrázky ?

Podman má několik podobností s Dockerem ve svých příkazech pro spuštění, jako je

1-Jak vytáhnout obrázek

podman pull my-image:latest

2- Jak spustit obrázek

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

3-seznam vytvořených a spuštěných kontejnerů

podman ps

4-Jak odstranit nádobu

podman rm my-container

Rozdíl mezi Podmanem a dockerem

Docker je technologie pro správu kontejnerů. Podman je také kontejnerová technologie. Můžete použít buď pro vytváření obrázků kontejneru a ukládání těchto obrázků do úložiště. Můžete také použít Docker nebo Podman k načtení obrázků kontejneru z registru a jejich následnému spuštění v cílovém prostředí

Technologie však mají rozdíly. Za prvé, zatímco Docker má základního démona, Podman používá k vytváření kontejnerů mírně odlišnou technologii. Za druhé, Podman, jak název napovídá, umožňuje uživatelům vytvářet pody. Pod je způsob, jak seskupit kontejnery pod společným názvem organizace. Docker nepodporuje moduly. Existují další jemné rozdíly, ale na vysoké úrovni jsou tyto dva rozdíly nejvýraznější

1-Kontejnery bez kořenů

Kontejnery bez kořenů označují schopnost neprivilegovaného uživatele vytvářet, spouštět a jinak spravovat kontejnery.

„Neprivilegovaný uživatel“ v tomto kontextu označuje uživatele, který nemá žádná administrátorská práva

nainstalovat slirp4netns:

yum install slirp4netns

nakonfigurovat množství síťových jmenných prostorů s rozsahem uživatele:

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

nyní můžete spustit kontejner bez root jako běžný uživatel, stačí se připojit k serveru jako uživatel.

když spustíte nový kontejner s podman run, bude vytvořen s UID vašeho uživatelského účtu namísto root

Pods

Pods jsou nejmenší nasaditelné výpočetní jednotky, které můžete vytvářet a spravovat a které vypadají jako kubernetes pody.

vytvoření pod:

podman pod create --name my-pod

přidat kontejner do podů:

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

může spravovat kontejner v podech:

podman kill my-pod     #  kill all containers


podman restart my-pod  # restart all containers
           

podman stop my-pod  #stop all containers

Závěr

na závěr podman je kontejnerový engine jako docker má mnoho podobností, jako je jak vytáhnout obrázek, spustit obrázek. ale mají mnoho rozdílů, jako je nádoba bez kořenů a lusky


Docker
  1. Rozdíl mezi [[ $a ==Z* ]] a [ $a ==Z* ]?

  2. Rozdíl mezi Eot a Eof?

  3. Rozdíl mezi Snat a Masquerade?

  1. Jaký je rozdíl mezi kontejnery LXC, LXD a Docker

  2. Jak sdílet data mezi kontejnery Docker

  3. Docker Run vs Start vs Create:Rozdíl je vysvětlen

  1. Jaký je rozdíl mezi linuxovým kontejnerem a obrázkem?

  2. Co je Docker, Rozdíl mezi Dockerem a VM, Instalace Dockeru a jeho použití

  3. Rozdíl mezi [0-9], [[:digit:]] a D?