Docker: tout sur les conteneurs

Logo Docker: Baleine chargée en conteneur

Comme vous le savez déjà, il existe plusieurs types de virtualisation, l'un d'eux est la virtualisation au niveau du système d'exploitation, et l'un des projets qui se démarque le plus à cet égard est docker, avec d'autres projets open source tels que OpenVZ, LXC / LXD, Linux-VServer, etc., ou le logiciel propriétaire Virtuozzo. Si vous connaissez ce monde ou si vous êtes un habitué de ce type de blog, vous connaissez déjà le projet dont le logo est une baleine (d'où le titre pour ceux qui ne le connaissent toujours pas), et surtout vous l'aurez remarqué comment, ces dernières années, sa présence et son intérêt dans les médias ont augmenté de façon exponentielle.

Et c'est que ces nouvelles technologies sont le présent et l'avenir, surtout avec la croissance brutale des services en le nuage dont nous avons parlé tant de fois. Docker, parmi de nombreux autres projets open source et gratuits, sont ceux qui permettent cette expansion et les grandes possibilités dont nous avons besoin du cloud. Mais qu'est-ce que Docker? Qu'est-ce qu'un conteneur? Comment ça marche?

Docker et conteneurs:

Système d'exploitation de l'éleveur

Bien que la réponse est un peu plus complexe et j'aurais besoin de plusieurs de ces articles, je vais essayer de le résumer. Cependant, si vous avez besoin d'en savoir plus sur ce projet fantastique, il existe de très bons livres comme Alberto González, actuel consultant Red Hat Cloud. C'est un guide pratique que vous pouvez acquérir à un prix abordable à la fois en Amazon comme dans bouche bée. Eh bien, cela dit, apprenons à savoir ce qu'est Docker.

Nous savons tous que Les conteneurs Ils sont devenus un outil avec beaucoup de potentiel sous Linux, eh bien, ils peuvent être implémentés et gérés grâce au logiciel Docker. Les conteneurs ne sont rien de plus que des «boîtes» isolées contenant les éléments essentiels pour pouvoir exécuter un certain programme ou une certaine application. Cela peut être compris comme une machine virtuelle légère, au lieu des machines complètes et lourdes avec lesquelles on travaille en virtualisation complète. Cette réduction se traduit par une réduction des frais généraux.

Les conteneurs apportent également de la légèreté portabilité, autosuffisance et flexibilité très convoité par les développeurs. Tout cela grâce à LXC de notre noyau préféré, Linux, et au projet Docker lui-même, avec ses conteneurs, images et référentiels. Et ce sont ces avantages qui ont fait le succès, qui a été noté à la fois par l'implication de certaines grandes entreprises du secteur comme Google, Red Hat, IBM et Microsoft, ainsi que par sa mise en œuvre et son bon accueil dans les grandes entreprises et des services cloud que nous utilisons tous quotidiennement (AWS, Digital Ocean,…).

Installez Docker étape par étape:

Interface Web Docker Cloud

Vous avez plusieurs alternatives pour installer Docker, de l'obtention de l'archive tar avec le code source et de la compilation, à l'obtention des binaires des différents référentiels et à leur gestion avec les gestionnaires de paquets de votre distribution openSUSE, Ubuntu, Debian, CentOS, Fedora, etc. Peut-être qu'avec les packages binaires, c'est plus confortable, mais afin de ne pas trop allonger le sujet, je vais présenter une méthode plus directe et universelle qui fonctionne dans n'importe quelle distribution:

sudo curl -fsSL https://get.docker.com/ | sh

Aussi simple que cela. Maintenant nous avons le diable et le client, ce dernier sera celui qui interagira avec le démon Docker et nous permettra de faire tout ce que propose ce logiciel. Mais il reste encore quelque chose à faire, à savoir lever le service, c'est-à-dire démarrer le démon Docker. Pour systemd, vous pouvez effectuer les opérations suivantes:

sudo systemctl enable docker

sudo systemctl start docker

Si tout s'est bien passé, sera déjà actif tout. Vous pouvez le vérifier avec:

sudo systemctl status docker

Nous pouvons commencer à l'utiliser maintenant ...

Premiers pas: créer un conteneur

Schéma d'un conteneur

Eh bien, comme vous le savez déjà, le container C'est un package avec tout le nécessaire pour qu'une ou plusieurs applications s'exécutent, c'est-à-dire similaire à une machine virtuelle, mais plus léger en fonction de l'hôte pour l'exécution. Pour que le conteneur fonctionne, il doit disposer des bibliothèques nécessaires à l'exécution, ainsi que de certaines dépendances, telles que certains outils du système d'exploitation. Bien sûr, une autre des parties nécessaires est l'environnement d'exécution, c'est-à-dire un environnement d'exécution tel que des interprètes pour les langages interprétés, JVM, des fichiers avec du code ou des binaires, etc.

Il y en a commandes de base de Docker avec lequel vous allez "bouger" dans l'environnement, ils sont assez nombreux, comme info, insert, kill, stop, start, build, ps, etc. Pour les voir tous et à quoi sert chacun d'eux, il vous suffit de courir:

docker

Pour plus d'informations, vous pouvez consulter la documentation officielle.

Comment puis? créer un conteneur avec Docker? Eh bien, maintenant nous allons donner un exemple, nous allons créer un conteneur avec Ubuntu et pour cela nous utilisons la commande run, qui permet à la fois de créer et d'exécuter des conteneurs (plus d'informations courir -h):

docker run -i -t ubuntu /bin/echo Prueba contenedor

Et cela utilisera une image locale si nous l'avons déjà ou, s'il ne peut pas la trouver, il la téléchargera. En outre créera le conteneur, allouera de l'espace pour le nouveau FS et le montera. Bien sûr, vous attribuerez une interface réseau pour la communication invité / hôte. Une fois cela fait, il nous montrera un écho avec la phrase «Test de conteneur»Que nous avons mis.

Vous voir toutes les images qu'est-ce que tu as avec:

docker images

Et pour larme un, vous pouvez utiliser l'ID de conteneur avec:

docker start -a <pon-la-ID-del-container>

Pour les arrêter, vous pouvez utiliser stop au lieu de start:

docker stop <pon-la-ID-del-container>

Et ce ne sont que les bases de Docker. J'espère que cela vous a aidé à démarrer et à faire les premiers pas, car cela peut vous offrir de nombreuses possibilités. Comme vous pouvez le voir, c'est un sujet très large et dans lequel vous pouvez approfondir à partir de ce tutoriel ou acheter des livres supplémentaires comme celui cité dans les premiers paragraphes, que je recommande pour sa simplicité dans les explications pratiques. N'oubliez pas de laisser vos commentaires...


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Sayabros dit

    Intéressant, j'attends avec impatience les prochains articles, merci