Fermer

mai 27, 2021

Docker Bootcamp – Mise en réseau, partie 3


Bienvenue à nouveau dans Docker Bootcamp . Dans le précédent article sur la mise en réseau nous avons mappé les ports du conteneur sur l'hôte et nous nous sommes connectés aux services exécutés à l'intérieur du conteneur. Ici, nous allons définir des DNS et des noms d'hôte personnalisés. L'utilisation de ces options modifie les configurations réseau à l'intérieur du conteneur de différentes manières.

  • Domain Name Service (DNS) – Un protocole pour mapper des noms conviviaux à des adresses IP.
  • Host file – Un fichier qui mappe les noms d'hôte aux adresses IP à utiliser sur le système local.
  • Adresse IP – Représente l'emplacement d'une interface réseau sur un réseau. Les conteneurs se voient attribuer une adresse IP unique au démarrage et perdent l'adresse IP lorsqu'ils sont arrêtés.
  • Interface réseau – Représente un emplacement et une adresse d'un périphérique réseau.
  • Port – Représente l'expéditeur ou le destinataire de un message sur le réseau. L'expéditeur et le destinataire sont des applications qui écoutent sur le port spécifié en attente d'une requête et retournent une réponse.
  • run – Créer et démarrer un nouveau conteneur

Vous pouvez trouver une liste complète des commandes et tous les indicateurs disponibles à https://docs.docker.com/engine/reference/commandline/docker/ .

run

docker run [options] image [command] [args…]
Outputs: ContainerID

–add-host O Ajouter un mappage hôte-IP personnalisé (contrôle le trafic sortant du conteneur)
–dns O Définir des serveurs DNS personnalisés (par défaut, le serveur de noms de l'hôte)
–hostname O Définit le nom d'hôte du conteneur (par défaut l'ID de conteneur court s'il n'est pas spécifié)

No Host Flags

  • Créer, démarrer et exécuter un conteneur interactif
    • docker run -it –name nohost busybox / bin / sh
  • Essayez d'envoyer une requête ping à une interface réseau externe
    • ping docker.com
      • Remarquez les résultats du ping
      • Notez l'adresse IP
  • Liste des conteneurs en cours d'exécution
    • docker ps
      • Notez l'ID du conteneur (le nom court de 12 caractères est affiché)
  • Afficher le fichier d'hôtes
    • cat / etc / hosts
      • Notez la ligne «x.x.x.x »
      • Docker ajoute automatiquement une entrée de fichier hôte pour l'ID du conteneur qui pointe vers l'IP du conteneur
  • Essayez d'envoyer une requête ping au conteneur par identifiant
    • ping
      • Avis des résultats de ping
      • La réponse provient de l'adresse IP du conteneur
  • Afficher les informations DNS
    • cat /etc/resolv.conf
      • Notez le message indiquant que les requêtes DNS sont transmises à l'hôte

Add Host

  • Créez, démarrez et exécutez un conteneur interactif avec un mappage de nom d'hôte
    • docker run -it –add-host docker.com:127.0.0.1 –name addhost busybox / bin / sh
  • Afficher le fichier hosts
    • cat / etc / hosts
      • Notez la ligne «127.0.0.1 docker.com»
  • Essayez d'envoyer une requête ping à une interface réseau externe
    • ping docker.com
      • Remarquez les résultats du ping
      • Notez que l'adresse IP pointe vers l'interface de bouclage locale telle que définie avec le paramètre add-host

Hostname

  • Créez, démarrez et exécutez un conteneur interactif avec un nom d'hôte spécifié
    • docker run -it –hostname hosttest –name hostname busybox / bin / sh
  • Afficher le fichier hosts
    • cat / etc / hosts
      • Notez que la ligne «x.x.x.x hosttest»
      • Notez que la ligne «x.x.x.x » n'est pas présente
  • Essayez d'envoyer une requête ping au conteneur par nom d'hôte
    • test hôte ping
      • Avis des résultats du ping
      • La réponse provient de l'adresse IP du conteneur

DNS

  • Créer, démarrer et exécuter un conteneur interactif avec un serveur DNS spécifié
    • docker run -it –dns 8.8.8.8 –name nom d'hôte busybox / bin / sh
      • Ceci est le serveur DNS public de Google
  • Afficher les informations DNS
    • cat /etc/resolv.conf
      • Remarquez le serveur de noms 8.8.8.8

En définissant divers indicateurs lorsque nous créons un conteneur, nous pouvons modifier la façon dont le conteneur est identifié sur le réseau, comment il gère le trafic sortant et comment il résout les noms de domaine. Assurez-vous d'arrêter et de supprimer vos conteneurs pour avoir un espace de travail propre pour la prochaine leçon.




Source link