La société Red Hat a présenté lors de la conférence Red Hat Summit 2026 le projet Fedora Hummingbird, qui propose une nouvelle édition de Fedora Linux à mise à jour continue, organisée sous la forme d'une collection de conteneurs. Pour réduire la surface d'attaque, les conteneurs incluent uniquement l'ensemble minimal de composants nécessaires pour résoudre des tâches spécifiques. Les versions des logiciels sont mises à jour rapidement, dès que possible après leur sortie par les projets principaux. Le processus d'installation des mises à jour est automatisé. Les outils utilisés dans le projet sont open source sous licence MIT.
Les images de conteneurs sont publiées pour les architectures amd64 et arm64. Actuellement, le catalogue propose 49 variantes de conteneurs (en tenant compte des éditions FIPS et multi-arch — 157), permettant de déployer des environnements de travail avec Python, Go, Node.js, Rust, Ruby, OpenJDK, .NET, PostgreSQL, nginx et d'autres projets open source. Les images sont formées selon le principe « Distroless », c'est-à-dire qu'elles n'incluent pas de gestionnaire de packages ni d'interpréteur de commandes (shell), mais contiennent uniquement l'application cible et les composants nécessaires à son fonctionnement.
95 % des paquets utilisés dans les images de conteneurs Hummingbird sont issus du dépôt Fedora Rawhide, tandis que les 5 % restants sont téléchargés et compilés directement à partir des dépôts des projets principaux (upstream). Ces 5 % comprennent des applications absentes de Rawhide ou ayant des versions moins récentes dans Rawhide. Pour la création de Hummingbird, indépendamment de Fedora, des paquets RPM spécifiques sont maintenus séparément, construits dans une infrastructure distincte à partir des fichiers SPEC standard de Fedora, ce qui permet d'ajouter si nécessaire des optimisations et des modifications spécifiques au projet.
Les builds fournies sont compatibles avec des images de Docker Hub, Red Hat UBI et d'autres registres, ce qui facilite la migration vers Hummingbird des systèmes existants. Contrairement au projet CoreOS, qui propose des builds hôtes minimalistes pour l'orchestration de conteneurs, Hummingbird est destiné aux développeurs qui ont besoin d'utiliser simultanément différentes versions de runtime (Python 3.11-3.14, Go 1.25-1.26, Node.js 20-25, etc.) et de maintenir séparément le cycle de vie de chaque version.
Contrairement aux conteneurs traditionnels, la plupart des options Hummingbird fonctionnent par défaut sous un utilisateur non privilégié sans droits root. Les conteneurs permettent une construction reproductible et peuvent être reconstruits par l'utilisateur à partir du code source fourni, afin de s'assurer que les images prêtes à l'emploi de son projet et celles diffusées coïncident parfaitement. Pour simplifier la vérification, des conteneurs source sont fournis séparément avec tout le code nécessaire et les paquets RPM sources. Pour garantir la sécurité, le contenu des conteneurs est assemblé dans un environnement isolé, n'ayant pas accès à Internet.
En plus des conteneurs pour exécuter des applications finales, le projet développe une image hôte de démarrage bootc-os, construite en utilisant la technologie des conteneurs de démarrage et adaptée pour installation sur disque. L'image système combine les composants de Hummingbird, les paquets avec le noyau Linux du projet CKI (Continuous Kernel Integration), le chargeur de démarrage et les services système de Fedora. L'ensemble du système est présenté sous la forme d'un conteneur OCI. La mise à jour de bootc-os se fait automatiquement à chaque redémarrage. Les outils Podman et Skopeo sont utilisés pour exécuter des conteneurs depuis l'environnement bootc-os.
Source : opennet.ru
