GNU/Linux >> Znalost Linux >  >> Fedora

Co uživatelé Linuxu a baliči potřebují vědět o Podman 4.0 na Fedoře

Nově vydaný Podman 4.0 obsahuje kompletní přepsání síťového zásobníku založeného na Netavark a Aardvark, který bude fungovat společně se stávajícím zásobníkem Container Networking Interface (CNI).

Netavark je nástroj založený na Rustu pro konfiguraci sítí pro kontejnery Linuxu, který slouží jako náhrada zásuvných modulů CNI (containernetworking-plugins na Fedoře). Aardvark-dns je nyní autoritativní server DNS pro záznamy kontejnerů. Spolu s novým zásobníkem přicházejí změny balení distribuce spolu se změnami dostupnosti úložiště pro Fedora 35.

Pro uživatele Fedory

Podman v4 je k dispozici jako oficiální balíček Fedory na Fedoře 36 a Rawhide. Oba Netavark a Aardvark-dns jsou dostupné jako oficiální balíčky Fedory na Fedoře 35 a novějších verzích a tvoří výchozí síťový zásobník pro nové instalace Podman 4.0.

Na Fedoře 36 a novější nové instalace Podman v4 automaticky nainstalují Aardvark-dns spolu s Netavark.

Chcete-li nainstalovat Podman v4:

$ sudo dnf install podman

Chcete-li aktualizovat Podman ze starší verze na v4:

$ sudo dnf update podman

Protože Podman v4 obsahuje některé přelomové změny oproti Podman v3, uživatelé Fedory 35 nemohou nainstalovat Podman v4 pomocí výchozích úložišť. Pokud to však chcete vyzkoušet, můžete místo toho použít úložiště Copr:

$ sudo dnf copr enable rhcontainerbot/podman4

# install or update per your needs
$ sudo dnf install podman

Chcete-li po instalaci migrovat všechny své kontejnery na používání Netavark, musíte nastavit network_backend = "netavark" pod [network] v sekci containers.conf , který se obvykle nachází na adrese /usr/share/containers/containers.conf .

Testování nejnovější vývojové verze

Pokud byste chtěli otestovat nejnovější nevydaný upstream kód, vyzkoušejte podman-next Copr:

$ sudo dnf copr enable rhcontainerbot/podman-next

$ sudo dnf install podman

POZOR:podman-next Copr poskytuje nejnovější nevydané zdroje Podman, Netavark a Aardvark-dns jako RPM Package Managers (RPM). Ty přepíší verze dodávané oficiálními balíčky.

Pro baliče Fedory

Zdroje balíčků Fedory pro Podman jsou dostupné v úložišti Fedory pro údržbu balíčků. Hlavní balíček Podman již není explicitně závislý na containernetworking-plugins . Závislosti síťového zásobníku jsou nyní řešeny v containers-common balíček, který umožňuje správu závislostí v jediném bodě pro Podman a Buildah.

- containers-common
Requires: container-network-stack
Recommends: netavark

- netavark
Provides: container-network-stack = 2

- containernetworking-plugins
Provides: container-network-stack = 1

Tato konfigurace zajišťuje, že:

  • Nové instalace Podman vždy nainstalují Netavark ve výchozím nastavení.
  • containernetworking-plugins balíček nebude v konfliktu s Netavark a uživatelé je mohou nainstalovat společně.

Výpis sdružených závislostí

Pokud potřebujete vypsat sdružené závislosti ve zdrojích balíčků, můžete zpracovat go.mod soubor v upstream zdroji. Zdroj balení Fedory například používá:

$ awk '{print "Provides: bundled(golang("$1")) = "$2}' go.mod | \
sort | uniq | sed -e 's/-/_/g' -e '/bundled(golang())/d' -e '/bundled(golang(go\
|module\|replace\|require))/d'

Netavark a Aardvark-dns

Zdroje .tar pro Netavark a Aardvark-dns budou připojeny jako upstreamový artefakt vydání. Poté můžete vytvořit konfigurační soubor Cargo, který jej nasměruje do adresáře dodavatele:

tar xvf %{SOURCE}
mkdir -p .cargo
cat >.cargo/config << EOF
[source.crates-io]
replace-with = "vendored-sources"

[source.vendored-sources]
directory = "vendor"
EOF

Zdroje balíčků Fedory pro Netavark a Aardvark-dns jsou také dostupné v úložišti projektu Fedora.

Verze přepravek Rust zabalené ve Fedoře, na kterých závisí Netavark a Aardvark-dns, jsou často zastaralé (například rtnetlink, sha2, zbus a zvariant) v době počátečního vytvoření balíčku. Výsledkem je, že Netavark a Aardvark-dns jsou sestaveny pomocí závislostí dodávaných upstream, které najdete v vendor podadresář.

Binární soubor netavark je nainstalován do /usr/libexec/podman/netavark , zatímco binární soubor aardvark-dns je nainstalován do /usr/libexec/podman/aardvark-dns .

netavark balíček má Recommends na aardvark-dns balík. aardvark-dns balíček bude standardně nainstalován s Netavark, ale Netavark bude funkční i bez něj.

Výpis sdružených závislostí

Pokud potřebujete vypsat sdružené závislosti ve zdrojích balíčků, můžete spustit cargo tree příkaz v upstream zdroji. Zdroj balení Fedory například používá:

$ cargo tree --prefix none |  \
awk '{print "Provides: bundled(crate("$1")) = "$2}' | \
sort | uniq

Další informace

Doufám, že vám tyto aktualizace pomohly. Pokud máte nějaké dotazy, neváhejte otevřít diskusi na GitHubu nebo kontaktujte mě nebo ostatní správce Podman přes Slack, IRC, Matrx nebo Discord. A co je ještě lepší, byli bychom rádi, kdybyste se připojili k naší komunitě jako přispěvatel!


No
Fedora
  1. Seznamy řízení přístupu a externí disky v systému Linux:Co potřebujete vědět

  2. Co jste možná nevěděli o sudo

  3. Co je dobré vědět o serveru Debi a Volume Linux

  1. Co je Podman a jak nainstalovat Podman v Linuxu

  2. Co potřebují správci systému vědět o používání Bash

  3. Co jsou uživatelé SELinuxu a jak mapovat uživatele Linuxu na uživatele SELinuxu

  1. Linuxové firewally:Co potřebujete vědět o iptables a firewalld

  2. Co je nového ve Fedora 32 Workstation

  3. Co potřebujete vědět o IPv6