Apple a beaucoup de nouveaux tours dans son sac pour la prochaine itération de MacOS. Il y a la nouvelle interface utilisateur (élégante et élégante), les fonctions d’intelligence artificielle supplémentaires, les améliorations des performances et bien d’autres choses encore. Mais il y a une nouvelle fonctionnalité qui peut intéresser ou non l’utilisateur moyen.
Il s’agit des conteneurs.
Pensez aux conteneurs comme suit : un paquet léger et isolé qui contient :
- Le code de l’application
- Les dépendances et les bibliothèques nécessaires pour fonctionner dans un environnement isolé afin de ne pas avoir d’impact négatif sur l’ordinateur hôte.
OK, voici une définition peut être plus simple. Un conteneur est une application que vous pouvez créer (ou simplement exécuter) qui est isolée de toutes les autres applications sur votre système mais qui peut fonctionner comme prévu.
Les conteneurs sont l’affaire des développeurs
Ainsi, comme vous l’avez compris, les conteneurs sont l’affaire des développeurs.
Les développeurs construisent des conteneurs qui servent des objectifs spécifiques et peuvent être partagés avec d’autres développeurs, des entreprises et même des utilisateurs. J’ai beaucoup utilisé les conteneurs et je les ai toujours trouvés utiles. J’ai utilisé des conteneurs pour déployer des services sur mon réseau local, j’en ai créé pour des clients. Mais pourquoi Apple ajoute-t-il des conteneurs à ce qui est considéré comme un système d’exploitation destiné aux utilisateurs finaux ?
Eh bien, de nombreux développeurs utilisent MacOS. Ce qui signifie que l’ajout de conteneurs pourrait les aider à faire ce qu’ils font.
Avec MacOS Tahoe, les développeurs (et les utilisateurs) auront la possibilité de travailler avec des conteneurs Linux… en mode natif. En effet, à partir de Tahoe, vous pourrez exécuter un environnement Linux (sans interface graphique) et l’utiliser à n’importe quelle fin. Vous pourrez faire tourner un OS Linux pour le développement ou même pour installer des outils basés sur des serveurs (tels que WordPress, InvoicePlane, etc.) et les exécuter directement à partir de votre Mac.
Que peut-on faire avec les conteneurs dans MacOS ?
La prochaine fonction de conteneur de MacOS fonctionnera comme à peu près tous les outils de conteneur du marché, ce qui vous permettra de :
- Créer et exécuter des images de conteneurs.
- Déplacer des conteneurs vers des registres standard.
- Exécuter des conteneurs dans une machine virtuelle Linux isolée.
Et comme ce nouvel outil utilise un système d’initialisation basé sur Swift, il n’y a pas de partage entre le conteneur et le noyau de MacOS (ce qui était un problème avec les outils de conteneur précédents sur MacOS – entraînant des problèmes de sécurité).
Comment Apple y est-il parvenu ?
Apple a créé un nouveau framework de conteneurisation qui permet de contrôler les conteneurs, les images de conteneur et les processus. Ce nouveau framework comprend également des sidecars, c’est-à-dire des conteneurs qui s’exécutent à côté d’autres conteneurs pour ajouter des fonctionnalités telles que la journalisation et la surveillance du conteneur principal.
Il s’agit d’une avancée majeure. Car les développeurs disposent ainsi de tout ce dont ils ont besoin pour travailler avec des conteneurs et les faire fonctionner sans avoir à installer un logiciel tiers (tel que Docker).
Cela permet une meilleure intégration avec macOS, de meilleures performances des conteneurs, une sécurité plus stricte et une expérience nettement améliorée.
Qu’est-ce que cela signifie pour vous ?
Honnêtement, pas grand-chose. Je n’imagine pas l’utilisateur moyen ouvrir l’application Terminal, extraire une image de conteneur d’un référentiel et développer un conteneur. Mais pour les développeurs, cela pourrait être énorme.
Et avec une intégration étroite dans le système d’exploitation MacOS, les possibilités sont infinies. J’imagine que, peu après la sortie de Tahoe, nous commencerons à voir apparaître des applications GUI pour rendre le développement de conteneurs avec MacOS encore plus facile (peut-être au point que les utilisateurs moyens pourraient déployer un conteneur sur leur réseau domestique pour que tous les membres de leur réseau local puissent l’utiliser).
En fin de compte, cette nouvelle fonctionnalité s’adressera principalement aux développeurs qui souhaitent mettre de côté des outils comme Docker et choisir de rester dans l’écosystème MacOS.
Exécuter une instance de Linux en mode texte
Les conteneurs existent depuis longtemps et ne sont pas près de disparaître. Si Apple a son mot à dire, les développeurs qui utilisent macOS opteront pour les outils de conteneurs natifs, afin de pouvoir développer avec Linux dans un environnement transparent, puissant et sécurisé.
Utiliserez-vous des conteneurs après la sortie de Tahoe ? Si vous êtes un développeur, il y a de fortes chances que vous les utilisiez au moins à titre expérimental.
Si vous êtes un utilisateur final, il est très probable que vous ne le ferez pas. Cependant, le fait d’avoir les outils à disposition signifie qu’il sera très facile d’exécuter une instance de Linux en mode texte, ce qui signifie que même les utilisateurs finaux de MacOS pourront s’aventurer dans les eaux conteneurisées.