GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

Une introduction à Docker

Qu'est-ce que Docker ?

Docker est un outil qui vous permet de créer, de déployer et de gérer des packages légers et autonomes contenant tout le nécessaire pour exécuter une application (code, bibliothèques, environnement d'exécution, paramètres système et dépendances). Ces packages sont appelés conteneurs.

Chaque conteneur est déployé avec son propre processeur, sa mémoire, ses E/S de bloc et ses ressources réseau, le tout sans avoir à dépendre d'un noyau et d'un système d'exploitation individuels. Bien qu'il puisse être plus facile de comparer Docker et les machines virtuelles, ils diffèrent dans la manière dont ils partagent ou dédient des ressources.

Les conteneurs aident à étendre les fonctionnalités de votre Linode de plusieurs façons. Par exemple, vous pouvez déployer plusieurs instances de nginx avec plusieurs étapes (telles que le développement et la production). Contrairement au déploiement de plusieurs machines virtuelles, les conteneurs déployés ne taxeront pas les ressources de votre Linode.

Images Docker

Chaque conteneur Docker est créé à partir d'une image. Vous extrayez des images d'un registre Docker (tel que le hub officiel Docker) et les utilisez pour créer des conteneurs. Une seule image peut créer de nombreux conteneurs. Par exemple, vous pouvez utiliser la dernière image nginx pour déployer un conteneur de serveur Web pour :

  • Opérations de développement Web
  • Test
  • Fabrication
  • Applications Web

Fichiers Docker

Un Dockerfile est un fichier texte qui contient les commandes nécessaires pour assembler une image. Une fois qu'un Dockerfile est écrit, l'administrateur utilise le docker build commande pour créer une image basée sur les commandes du fichier. Les commandes et informations contenues dans le Dockerfile peut être configuré pour utiliser des versions logicielles et des dépendances spécifiques afin de garantir des déploiements cohérents et stables.

Un Dockerfile utilise les commandes suivantes pour créer les images :

  • AJOUTER - copier les fichiers d'une source sur l'hôte vers le propre système de fichiers du conteneur à la destination définie.
  • CMD - exécuter une commande spécifique dans le conteneur.
  • POINT D'ENTRÉE - définir une application par défaut à utiliser chaque fois qu'un conteneur est créé avec l'image.
  • ENV - définir des variables d'environnement.
  • EXPOSER - exposer un port spécifique pour permettre la mise en réseau entre le conteneur et le monde extérieur.
  • DE - définir l'image de base utilisée pour démarrer le processus de construction.
  • MAINTENEUR - définir le nom complet et l'adresse e-mail du créateur de l'image.
  • EXÉCUTER - directive d'exécution centrale pour Dockerfiles.
  • UTILISATEUR - définissez l'UID (le nom d'utilisateur) qui exécutera le conteneur.
  • VOLUME - autoriser l'accès depuis le conteneur à un répertoire sur la machine hôte.
  • REPERTOIRE - définir le chemin où la commande, définie avec CMD, doit être exécutée.

Toutes les commandes ne doivent pas être utilisées. Vous trouverez ci-dessous un exemple de travail Dockerfile, utilisant uniquement le MAINTAINER , FROM , et RUN commandes :

Fichier :Dockerfile
1
2
3
MAINTAINER NAME EMAIL
FROM ubuntu:latest
RUN apt-get -y update && apt-get -y upgrade && apt-get install -y build-essential

Docker Swarm

Docker facilite la réunion de serveurs pour former un cluster, appelé Docker Swarm. Une fois que vous avez créé un responsable Swarm ou un leader , et des nœuds attachés au leader, vous pouvez faire évoluer le déploiement du conteneur. Le leader adaptera automatiquement le cluster en ajoutant ou en supprimant des tâches pour maintenir un état souhaité.

Un nœud est une instance unique du moteur Docker qui participe au Swarm. Vous pouvez exécuter un ou plusieurs nœuds sur un seul Linode. Le gestionnaire Swarm utilise l'équilibrage de charge d'entrée pour exposer les services qui peuvent être mis à la disposition du Swarm. Docker Swarm peut également :

  • Vérifiez l'état de vos conteneurs.
  • Lancer un ensemble fixe de conteneurs à partir d'une seule image Docker.
  • Augmentez ou diminuez le nombre de conteneurs (en fonction de la charge actuelle).
  • Effectuer des mises à jour progressives sur tous les conteneurs
  • Assurer la redondance et le basculement.
  • Ajouter ou soustraire des itérations de conteneur à mesure que les demandes changent.

Étapes suivantes

Pour explorer davantage Docker, consultez notre référence rapide Docker, notre guide sur le déploiement d'un serveur Web Node.js ou le guide LinodeComment installer Docker et déployer une pile LAMP.

Plus d'informations

Vous pouvez consulter les ressources suivantes pour plus d'informations sur ce sujet. Bien que ceux-ci soient fournis dans l'espoir qu'ils seront utiles, veuillez noter que nous ne pouvons pas garantir l'exactitude ou l'actualité des documents hébergés en externe.

  • Documents Docker
  • Didacticiel d'essai de Docker
  • Centre Docker

Docker
  1. Quelques commandes DOCKER

  2. Comment se connecter en SSH à un conteneur Docker

  3. Comment installer Vim dans un conteneur Docker

  4. Introduction aux conteneurs Docker

  5. Présentation des images Docker

Comment exécuter PHPMyAdmin dans un conteneur Docker

Comment exécuter Grafana dans un conteneur Docker

Comment configurer un conteneur Apache Docker

Comment exécuter des conteneurs Docker

Que faire si un conteneur Docker se ferme immédiatement

Utiliser Docker Desktop pour gérer un conteneur