Megjelent a Docker Engine 29

Megjelent a Docker Engine 29, mely legnagyobb újdonsága a Containerd konténerkép tároló alapértelmezetté tétele és a kísérleti nftables támogatás.

Részletek:

Docker logó
Docker logó

Megjelent a Docker Engine 29, mely legnagyobb újdonsága a Containerd konténerkép tároló alapértelmezetté tétele és a kísérleti nftables támogatás.

Részletek:

Minimum API verzió emelése

A Docker Engine immár megköveteli a legalább 1.44-es API verziót használó klienseket.

A konténerképek alapértelmezett tárolója mostantól a Containerd

Az új telepítések esetén az immár a Containerd az alapértelmezett konténerkép tároló. A régi graph megoldás is megmaradt. de elavult státuszba került.

Frissítés esetén nincs teendőd, alapértelmezetten marad a régi képtároló megoldás. Új telepítéskor sincs dolgod, hiszen akkor alapértelmezetten a Containerd kerül használatra. Amennyiben valamiért nálad nem lenne megfelelő a Containerd alapú tárolás, úgy bármikor visszaválthatsz a régi megoldásra.

Ha meglévő telepítést szeretnél átállítani Containerd képtároló alá, akkor itt a hivatalos leírás: https://docs.docker.com/engine/storage/containerd/#enable-containerd-image-store-on-docker-engine

A Containerd használatával több új funkció későbbi implementálására is lehetőség nyílik: pillanatkép készítés fejlesztésére, konténerkép rétegeinek csak szükség esetén történő letöltésére (lazy pulling) és sok minden másra.

Go modulok használata

Az eddigi modulrendszert felváltja a Go alapú modulkezelés, melynek hála egyszerűbbé válik a Docker Engine-hez készített modulok írása és karbantartása.

Kísérleti nftables támogatás

A Docker az iptables és ip6tables parancsokat használja a hálózati hidak és az overlay hálózatok kezelésére. Ezek sok, modern disztribúció esetben már valójában az iptables-nft és az ip6tables-nft parancsokat jelentik, ahol az iptables szabályok automatikusan nftables szabályokra lettek konvertálva. Az iptables egyre több disztribúcióban válik elavult eszközzé, így a Docker Engine-nél is eljött az ideje a váltásnak.

Az nftables támogatása kísérleti, tehát alapértelmezetten ki van kapcsolva. Érdemes tudnod, hogy néhány nftables szabály funkciójában megegyezik, de itt-ott különbözik az eredeti iptables-ös párjától, különösen ha a „DOCKER-USER” láncot is használod. Az említett lánc tartalmát migrálni kell, amihez segítséget a Docker dokumentációjában találsz: https://docs.docker.com/engine/network/firewall-nftables/

Továbbá a „firewalld” alkalmazást használó rendszereken az iptables szabályok az elavultnak tekintett „direct” interfészen kerülnek létrehozásra. Az nftables esetén viszont firewalld nélkül, közvetlenül az nftables parancson keresztül kerülnek létrehozásra a szabályok és zónák.

Fontos a támogatás kísérleti jellegét hangsúlyozni, tehát éles rendszeren ne kapcsold be. Továbbá pillanatnyilag a Swarmbeli működés sem támogatott, így ott nem tudod bekapcsolni. Ugyanakkor hosszú távon az nftables lesz az alapértelmezett tűzfal konfigurátor.

Ha mindezek ellenére mégis ki akarod próbálni, akkor a dockerd démont a --firewall-backend=nftables kapcsolóval indítsd el.

Docker engine 29