Podman

2. listopadu 2021

Lang: cs en de es

Docker prosadil masově s kontejnerizaci, za to mu patří velké díky! Ale už tu jsou nové možnosti. Díky některým nevýhodám Dockeru, tak některé firmy a službu přechází na Podman, který je s Dockerem ekvivalentní. Jaké jsou rozdíly oproti Dockeru a jak přejít na Podman?

Podman je novější řešení a alternativa k Dockeru. Podman, tak jako Docker, je nástroj pro vytváření, správu a běh kontejnerů. Jedná se o řešení určené pro Linux. Podman je z velké části kompatibilní s Dockerem. Jeden z rozdílů je v tom, že vývojáři Podmanu kladou velký důraz na bezpečnost.

podman

Pokud začínáte s kontejnery, tak vás nejspíše zajímá Docker, pak si přečtěte článek Jak začít s Dockerem.
Pokud přecházíte z Dockeru na Podman můžete využít možnosti aliasu a místo Dockeru prostě volat Podman. Následujícím příkazem v konzoli nastavíte alias:

    alias docker=podman
Díky kompatibilitě tak můžete velice jednoduše přejít z Dockeru na Podman.

Rozdíly Podmanu oproti Dockeru

Přesto, že se jedná o technologii pro stejné použití a je Podman vyvíjen tak, aby byl s Dockerem kompatibilní, jsou tu rozdíly. Ostatně rozdíly je to co přináší výhody a případně i různé překážky v použití.

    V čem se Podman liší od Dockeru:
  • Podman je rootless technologie. To znamení, že k běhu nepotřebuje oprávnění superuživatele root.
  • Noexec funguje - můžete připojit filesystém, tak že soubory na něm nebude možné spustit.
  • Nefunguje "restart always". Musíte to tedy řešit jinak.
  • Kontejner s ssh serverem neudrží spojeni. Nepřišel jsem na to čím to je ani nenašel k tomu více informaci.

Kdo používal Docker, a potřeboval ho ovládat nějakým dalším nástrojem, tak vystavoval socket, přes který je možno komunikovat s Docker démodnem a vše co se týká Dockeru, tak mohl ovládat. Ale toto je bezpečnostní riziko, protože Docker běží pod rootem. Podman, protože neběží pod super uživatelem root, tak takové riziko tu není a Podman je tedy bezpečnější.
Z toho i plyne, že za při Podmanu, nepustíte kontejner na portu 80 a další porty nižší než 1024. To jsou porty vyhrazené pro superuživatel root. Řešení je upravit konfiguraci systému nebo jednodušší řešení je prostě kontejnery pouštět na portech vyšších než 1024.
Podman umožňuje vygenerování YAML konfigurace pro běh v Kubernetes. Podman ctí systémovou konfiguraci a tak například kontejnery dědí nastavení připojeného filesystému. Například pokud filesystém je připojen s parametrem no execute již nemusíte extra uvádět parametr pro konfiguraci Podman kontejneru, ale Podman připojí daný adresář se stejnou konfigurací.

Vyzkoušení Podamana

Pro vyzkoušení nástroje Podaman je nejjednodušší použít linuxovou distribuci Debian min verze 11. V této verzi je Podman již součástí standardního repositáře. V Debianu Podman nainstalujete příkazem:

apt-get install podman
A následně kdo jíž má zkusenost s Dockerem, může okamžitě, díky podobnosti, zkoušet Podman.

Video Podman

Video Docker je mrtev ať žije Podman, ve kterém vám řeknu základní informace o technologii Podman, rozdíly oproti Dockeru, ukáži instalci Podmanu a jeho první použití:

Pody

Podman rozšiřuje koncept kontejnerů o tzv. pody - jedná se o množinu kontejnerů, které sdílí systémové prostředky.

Začněte používat kontejnery

Docker a obecně kontejnery je buzzword. Často se automaticky používají v projektech a někdy i špatně. Nejsou však vždy potřeba a v takovém případě, jsou jen zbytečnou starostí na víc. Při smysluplném použití vám však kontejnery mohou výrazně ulehčí práci a tak ušetřit čas/peníze a předejít problémům. Obzvláště na lokální vývoj, testování, pokusy nebo školení je ideálním řešením. Jestliže jste kontejnery ještě nikdy nepoužili doporučuji je vyzkoušet a sami zjistíte jestli a k čemu se vám hodí.
Pokud s kontejnery začínáte rád nabídnu na téma kontejnery konzultaci nebo školení.

Články na podobné téma

VMware vs Proxmox: porovnání výkonu
GitLab CI/CD: automatizace testů a nasazení aplikace
Migrace VPS z VMware na Proxmox
Změna licencování VMware
Provoz Microsoft SQL serveru na Linuxu
Zálohování: Proxmox backup server
Linux jako router a firewall
Jak náhrát docker image do Docker Registry
Linux: Logical Volume Management
Linuxový softwarový RAID
Provoz webové aplikace za proxy
Migrace mail schránek
Docker multistage build
Zálohování dat zapnutím počítače
Import Windows do virtualizace Proxmox
Docker a PHP mail
Virtualizace Proxmox
Docker a Cron
Lenovo ThinkPad X1 Carbon: zprovoznění LTE modemu EM7544
Yocto Project: Build vlastního operačního sytému pro embedded zařízení
Příprava linuxového serveru pro běh webové aplikace v jazyce Python
Jak řešit špatný výkon sdílených souborů u Dockeru
Jak začít správně používat Docker
Instalace Linuxu na dedikovaný server HPE ProLiant DL320e
Jak provést zátěžový test webové aplikace
Proč používat filesystém JFS
Jak bootovat z 4TB disku s GTP pomocí UEFI
Jak nainstalovat operační systém Mageia Linux bez DVD mechaniky
Souborový systém Btrfs
Raspberry PI
Jak zprovoznit vzdálené přehrávání přes síť na televizi s DLNA
Upgrade Mandriva Linuxu za běhu
Poznámky ke GNU/Linux
WINE - spouštíme programy pro Windous pod Linuxem
Operační systém GNU/Linux

Odběr novinek

Pokud máte zájem dostávat příležitostně na email novinky.
Můžete se vyplněním emailu registrovat k odběru novinek.


+