GNU/Linux >> Tutoriels Linux >  >> Linux

Mes 5 images de conteneurs Linux préférées

Lorsque vous commencez à utiliser sérieusement des conteneurs, vous réalisez rapidement qu'il existe de nombreuses images de conteneurs. L'une des plus grandes forces de l'open source est le choix, et avec autant d'images disponibles, vous disposez de nombreuses options lorsque vous avez besoin d'une image sur laquelle baser votre travail. Je me retrouve à revenir assez souvent aux mêmes images. Il y en a cinq en particulier qui font de moi un architecte cloud débutant heureux.

Nginx

J'utilise Nginx sur des serveurs depuis plus d'une décennie maintenant, généralement pour son format de fichier de configuration facile et sa capacité à effectuer un assez bon équilibrage de charge. La migration vers Kubernetes pour exécuter des services m'a fait aimer encore plus Nginx, car je vois à quel point il est polyvalent en tant que proxy inverse, contrôleur d'entrée et, bien sûr, serveur Web léger.

L'image Bitnami Nginx sur Quay.io est celle que j'utilise par défaut lorsque j'ai besoin d'une instance Nginx rapide et fiable. Il est facile à utiliser avec Podman et facile à installer avec Helm. Il est bien documenté, donc je sais toujours où chercher les options de configuration essentielles.

RHEL

À l'époque où je construisais des applications personnalisées pour mes utilisateurs, j'ai pris l'habitude de baser mon travail sur la précédente Version de Red Hat Enterprise Linux (RHEL) à partir de tout ce qui était actuel. Il s'est avéré que baser le travail que vous vouliez être "universel" sur une distribution stable comme RHEL était une pratique sûre. Tout ce que j'ai construit fonctionnait sur Fedora et Debian et sur d'autres postes de travail, ainsi que sur mon poste de travail Slackware personnel.

De cette expérience, j'ai hérité de l'habitude de baser la plupart de mes travaux sur une installation propre et agréable de RHEL. Pour travailler dans le cloud, j'utilise l'image officielle RHEL.

[En savoir plus sur Linux en vous inscrivant à ce cours en ligne gratuit :Présentation technique de RHEL]

Postgres

Il existe de nombreuses applications géniales livrées dans des conteneurs. Quiconque a dû enchaîner plusieurs conteneurs pour faire fonctionner une application sait que les composants que vous utilisez sont vraiment importants. Au fur et à mesure que je déplace mes services en ligne dans le cloud, j'ai constaté que le fait d'avoir une base de conteneurs fiable pour les dépendances importantes facilite le déploiement de logiciels. En fait, de toutes les images que j'utilise, le conteneur PostgreSQL sur Quay.io est celui qui m'a le mieux aidé à saisir l'avantage des conteneurs.

J'ai déjà beaucoup de variables lorsque je configure des applications dans le cloud, donc savoir que le temps d'exécution de ma base de données est solide est un énorme avantage pour moi. Je pourrais configurer un système d'exploitation et Postgres dans un conteneur pour gérer en toute sécurité et fiabilité les données de mes applications, mais avec cette image, de nombreux experts Postgres l'ont déjà fait pour moi. C'est un avantage que j'accepterai avec plaisir.

BusyBox

Si jamais je suis bloqué sur une île déserte et que je ne peux choisir qu'une seule application à emporter avec moi, ce sera BusyBox. Avec plus de 400 commandes intégrées, BusyBox est une petite centrale électrique du potentiel POSIX.

Sur le cloud, c'est tout aussi utile que sur le bureau (ou mobile, ou TV, routeur, drone, etc.). L'image BusyBox du projet OpenShift est minuscule, elle est donc rapide à extraire. Il s'agit d'une image minimale, donc facile à utiliser, mais elle a été conçue avec la prise en charge de plusieurs architectures, y compris x64, Arm64, PPC, s390, etc., elle convient donc à n'importe quel cloud sur lequel vous vous trouvez.

Celle que je construis moi-même

Je ne suis pas entré dans Linux parce que je voulais forcer mon flux de travail dans la solution de quelqu'un d'autre. Le premier logiciel que j'ai jamais construit sur Linux était le noyau (j'avais déjà construit d'autres logiciels sur Unix), et mon objectif était alors de rendre bzImage aussi petit que possible. Je l'ai réduit à 1,5 Mo et j'en étais extrêmement fier, même s'il n'a pas réellement démarré (il s'avère que j'avais oublié d'inclure le pilote du système de fichiers).

Poursuivant dans cette belle tradition, la meilleure image est parfois celle que vous vous construisez. Chris Collins montre exactement comment procéder dans son article Comment créer de minuscules images de conteneurs. Plus important encore, il explique la logique derrière les choix les plus significatifs. ("Si nous nous spécialisons suffisamment et abandonnons l'idée de dépanner à l'intérieur des conteneurs de production, avons-nous besoin de Bash ?")

Inspirez-vous des meilleurs et essayez-le !

[ Créez des environnements d'application pour la fiabilité, la productivité et le changement. Téléchargez l'eBook gratuit Cloud-native meet hybrid cloud :A strategy guide. ]

Vos favoris

Ces trois images ne sont pas les seuls conteneurs que j'utilise. Il y a celui de RHEL 8/PostgreSQL 13 que j'utilise beaucoup, et celui d'Etcd qui revient souvent, et bien d'autres encore. Je trouve utile de se familiariser avec quelques images de conteneurs fiables, alors explorez vos référentiels d'images préférés et voyez ce qui existe.


Linux
  1. Construisez votre propre conteneur sur Linux

  2. Mes commandes Linux préférées pour optimiser les images Web

  3. Quelle est votre astuce de terminal Linux préférée ?

  4. 10 articles pour apprendre Linux à votre façon

  5. Quel est votre gestionnaire de packages Linux préféré ?

Mes options de commande Linux préférées

Mes jeux occasionnels préférés pour jouer sur Linux

4 technologies Linux fondamentales pour les conteneurs

Quelle est votre distribution Linux préférée ?

10 façons de démarrer avec Linux

Introduction à la gestion des conteneurs Linux