GNU/Linux >> Tutoriels Linux >  >> Fedora

Ce que les utilisateurs Linux et les empaqueteurs doivent savoir sur Podman 4.0 sur Fedora

Le nouveau Podman 4.0 propose une réécriture complète de la pile réseau basée sur Netavark et Aardvark, qui fonctionnera parallèlement à la pile CNI (Container Networking Interface) existante.

Netavark est un outil basé sur Rust pour configurer la mise en réseau des conteneurs Linux qui remplace les plugins CNI (containernetworking-plugins sur Fedora). Aardvark-dns est désormais le serveur DNS faisant autorité pour les enregistrements de conteneurs. La nouvelle pile s'accompagne de changements d'empaquetage de distribution ainsi que de changements de disponibilité du référentiel pour Fedora 35.

Pour les utilisateurs de Fedora

Podman v4 est disponible en tant que package Fedora officiel sur Fedora 36 et Rawhide. Netavark et Aardvark-dns sont tous deux disponibles en tant que packages Fedora officiels sur Fedora 35 et les versions plus récentes et forment la pile réseau par défaut pour les nouvelles installations de Podman 4.0.

Sur Fedora 36 et versions ultérieures, les nouvelles installations de Podman v4 installeront automatiquement Aardvark-dns avec Netavark.

Pour installer Podman v4 :

$ sudo dnf install podman

Pour mettre à jour Podman d'une ancienne version vers la v4 :

$ sudo dnf update podman

Étant donné que Podman v4 comporte des changements de rupture par rapport à Podman v3, les utilisateurs de Fedora 35 ne peuvent pas installer Podman v4 à l'aide des référentiels par défaut. Cependant, si vous êtes impatient de l'essayer, vous pouvez utiliser un référentiel Copr à la place :

$ sudo dnf copr enable rhcontainerbot/podman4

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

Après l'installation, si vous souhaitez migrer tous vos conteneurs pour utiliser Netavark, vous devez définir network_backend = "netavark" sous le [network] section dans votre containers.conf , généralement situé dans /usr/share/containers/containers.conf .

Test de la dernière version de développement

Si vous souhaitez tester le dernier code amont non publié, essayez le podman-next Copr :

$ sudo dnf copr enable rhcontainerbot/podman-next

$ sudo dnf install podman

ATTENTION :Le podman-next Copr fournit les dernières sources inédites de Podman, Netavark et Aardvark-dns en tant que gestionnaires de packages RPM (RPM). Celles-ci remplaceront les versions fournies par les packages officiels.

Pour les empaqueteurs Fedora

Les sources d'empaquetage Fedora pour Podman sont disponibles dans le référentiel de Fedora pour la maintenance des paquets. Le package Podman principal ne dépend plus explicitement de containernetworking-plugins . Les dépendances de la pile réseau sont désormais gérées dans le containers-common package, qui permet un point unique de maintenance des dépendances pour Podman et Buildah.

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

- netavark
Provides: container-network-stack = 2

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

Cette configuration garantit que :

  • Les nouvelles installations de Podman installeront toujours Netavark par défaut.
  • Les containernetworking-plugins package n'entrera pas en conflit avec Netavark, et les utilisateurs peuvent les installer ensemble.

Répertorier les dépendances groupées

Si vous avez besoin de répertorier les dépendances groupées dans vos sources d'empaquetage, vous pouvez traiter le go.mod fichier dans la source en amont. Par exemple, la source d'emballage de Fedora utilise :

$ 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 et Aardvark-dns

Les sources .tar fournies par Netavark et Aardvark-dns seront jointes en tant qu'artefact de version en amont. Ensuite, vous pouvez créer un fichier de configuration Cargo pour le faire pointer vers le répertoire du fournisseur :

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

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

Les sources d'empaquetage Fedora pour Netavark et Aardvark-dns sont également disponibles dans le référentiel du projet Fedora.

Les versions emballées Fedora des caisses Rust dont dépendent Netavark et Aardvark-dns sont souvent obsolètes (par exemple, rtnetlink, sha2, zbus et zvariant) au moment de la création initiale du paquet. En conséquence, Netavark et Aardvark-dns sont construits à l'aide des dépendances fournies en amont, trouvées dans le vendor sous-répertoire.

Le binaire netavark est installé dans /usr/libexec/podman/netavark , tandis que le binaire aardvark-dns est installé sur /usr/libexec/podman/aardvark-dns .

Le netavark le paquet a un Recommends sur le aardvark-dns emballer. Le aardvark-dns sera installé par défaut avec Netavark, mais Netavark fonctionnera sans lui.

Répertorier les dépendances groupées

Si vous avez besoin de répertorier les dépendances groupées dans vos sources d'empaquetage, vous pouvez exécuter l'cargo tree commande dans la source en amont. Par exemple, la source d'emballage de Fedora utilise :

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

Pour en savoir plus

J'espère que vous avez trouvé ces mises à jour utiles. Si vous avez des questions, n'hésitez pas à ouvrir une discussion sur GitHub, ou à me contacter ou à contacter les autres responsables de Podman via Slack, IRC, Matrx ou Discord. Mieux encore, nous serions ravis que vous rejoigniez notre communauté en tant que contributeur !


No
Fedora
  1. Listes de contrôle d'accès et lecteurs externes sous Linux :ce que vous devez savoir

  2. Ce que vous ne saviez probablement pas sur sudo

  3. Qu'est-ce que Podman et comment installer Podman sous Linux

  4. Ce que les administrateurs système doivent savoir sur l'utilisation de Bash

  5. Ce qu'il faut savoir sur Debi a Volume Linux Server

Tout ce que vous devez savoir sur le serveur Linux OpenSSH

Pscp dans le système Linux :tout ce que vous devez savoir sur

Tout ce que vous devez savoir sur le système d'exploitation Linux Zorin

Tout ce que vous devez savoir sur le système d'exploitation Peppermint Linux

Tout ce que vous devez savoir sur la distribution Linux Mint

Tout ce que vous devez savoir sur les inodes sous Linux