Maison > Opération et maintenance > Docker > Comment Docker effectue le mappage des ports

Comment Docker effectue le mappage des ports

PHPz
Libérer: 2023-04-04 13:57:18
original
21977 Les gens l'ont consulté

Docker, en tant que technologie de conteneurisation, peut nous aider à regrouper l'application et toutes les ressources dont elle a besoin dans un miroir, ce qui facilite son déploiement et sa gestion. Le mappage des ports est une fonction très importante de Docker, qui peut rendre notre application exposée. le réseau sur la machine hôte. Cet article présentera comment Docker effectue le mappage des ports.

1. Le concept de mappage de port

L'application dans le conteneur Docker doit être liée à un numéro de port pour écouter afin de pouvoir gérer les requêtes réseau dans l'hôte. Le mappage de port consiste à mapper le numéro de port dans le conteneur. l'hôte. Un numéro de port dans l'hôte, afin que le réseau externe puisse accéder à l'application dans le conteneur, et le mappage des ports peut être divisé en deux modes, l'un est le mode aléatoire et l'autre est le mode désigné.

2. Mode aléatoire

En mode aléatoire, Docker sélectionnera automatiquement un numéro de port inoccupé sur l'hôte et le mappera au port spécifié à l'intérieur du conteneur. Il suffit d'ajouter le paramètre -p à la commande docker run. effectuez le mappage de port, la commande spécifique est la suivante :

$ docker run -p [宿主机端口]:[容器内部端口] image_name
Copier après la connexion
Copier après la connexion

Parmi eux, le port hôte peut être un numéro de port aléatoire. À ce stade, nous pouvons utiliser la commande docker ps pour afficher le numéro de port mappé.

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES
c1abd02665a3        nginx               "nginx -g 'daemon of…"   3 hours ago         Up 3 hours          0.0.0.0:32768->80/tcp   nginx
Copier après la connexion

Vous pouvez voir que le numéro de port 32768 est le numéro de port hôte mappé aléatoirement par Docker.

3. Mode spécifié

En mode spécifié, nous pouvons spécifier un numéro de port sur l'hôte à mapper au numéro de port à l'intérieur du conteneur. Ceci est plus adapté au déploiement dans un environnement de production. Nous pouvons spécifier pour chaque conteneur un port différent. les numéros sont mappés, de sorte que les numéros de port puissent être facilement gérés et maintenus. La commande spécifique est la suivante :

$ docker run -p [宿主机端口]:[容器内部端口] image_name
Copier après la connexion
Copier après la connexion

Parmi eux, le port hôte peut être spécifié comme n'importe quel numéro de port disponible, tel que 80, 443, etc.

4. Spécification du port interne du conteneur

Lors du mappage de port, nous devons spécifier le numéro de port à l'intérieur du conteneur. S'il n'est pas spécifié, Docker utilisera le numéro de port par défaut écouté par l'application à l'intérieur du conteneur pour le mappage. , tel que 80 Le numéro de port correspond au service HTTP. Si nous voulons mapper le numéro de port 80 au numéro de port 8080 de l'hôte, nous pouvons utiliser la commande suivante pour effectuer le mappage de port :

$ docker run -p 8080:80 image_name
Copier après la connexion

De cette façon, nous peut utiliser le port 8080 de l'hôte pour accéder au service HTTP interne du conteneur.

5. Résumé

Le mappage des ports est une fonction très importante dans Docker. Il peut nous aider à exposer les applications du conteneur au réseau hôte afin qu'elles puissent être facilement accessibles et gérées. pour le mappage de port, et vous devez faire attention à la spécification du port interne du conteneur, afin de pouvoir configurer le mappage de port de manière plus flexible.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal