Table des matières
Que signifie exposer dans Docker ?
Maison Opération et maintenance Docker Que signifie exposer dans Docker ?

Que signifie exposer dans Docker ?

Jul 25, 2022 pm 04:12 PM
docker

Dans Docker, exposer signifie marquer des informations et est un moyen d'expression de document ; exposer peut permettre aux développeurs de comprendre rapidement quels services sont ouverts par Image dans le fichier docker. Les ports ne peuvent pas être ouverts directement, ce qui facilite l'utilisation du personnel d'exploitation et de maintenance. Lorsque vous créez un conteneur, vous savez quels ports ouvrir. S'il n'y a pas de port d'exposition, les services entre conteneurs peuvent également accéder les uns aux autres.

Que signifie exposer dans Docker ?

L'environnement d'exploitation de ce tutoriel : système linux7.3, docker version 19.03, ordinateur Dell G3.

Que signifie exposer dans Docker ?

L'exposition dans le Dockerfile est une information de balise Vous ne pouvez pas ouvrir directement le port, ce qui est pratique pour le personnel d'exploitation et de maintenance de savoir quels ports ouvrir lors de l'utilisation du conteneur. Lors de l'utilisation de docker run -itd -P xxx:xxx , capital -P mappera le port défini à l'aide de EXPOSE dans le fichier Dockerfile, et il n'est pas nécessaire de -p: ce formulaire manuellement.

EXPOSE n'est qu'un moyen d'expression du document. Dans le fichier docker, les développeurs peuvent rapidement comprendre quels services sont ouverts par Image. Cela n'a aucune signification pratique. S'il n'y a pas de port EXPOSE, les services entre conteneurs peuvent également accéder les uns aux autres.

La différence entre exposer et publier (run -p) dans Docker

L'enregistrement principal ici est un petit doute que j'ai découvert récemment en utilisant Docker. Pour résumer, voici :

Dans docker, quelles sont les différences et les connexions entre l'interface exposée docker run -p lorsque la ligne de commande est démarrée et l'interface exposée dans le fichier docker.

La description spécifique est la suivante :

Par exemple, j'expose d'abord un port 8080 dans le fichier Docker

EXPOSE 8080

Ensuite, je construis cette image pour une utilisation ultérieure

docker build -t myimage - Dockerfile
Copier après la connexion

Ensuite, j'utilise docker run pour démarrer un conteneur de this image Exemple, et publier un port

docker container run -d -p 8080 myimage
Copier après la connexion

Voici une question que j'ai mentionnée Depuis que j'ai déclaré le port Expose 8080 dans le Dockerfile, pourquoi dois-je encore publier le port (-p). Quelle est la différence et le lien entre les deux ? Puis-je directement

docker container run -d myimage
Copier après la connexion

 ? Dans ce cas, y a-t-il des ports exposés ?

Après le test (le processus de test est omis, les amis intéressés peuvent le tester par eux-mêmes. En fait, il existe des différences essentielles entre les deux, et il existe également un certain degré de corrélation.

Je vais les énumérer ici. Quatre combinaisons

A, ni Expose ni run -p dans le Dockerfile

B, Expose uniquement le port dans le Dockerfile

C, et Expose dans le Dockerfile en même temps, et exécutez -p

D, exécutez uniquement - p

1------Pour le cas A, le service démarré dans ce conteneur n'est pas accessible par l'hôte hôte et le réseau externe, ni par le conteneur de liens, et ne peut être utilisé qu'à l'intérieur de ce conteneur

2-- ------Pour la situation B, le service démarré dans ce conteneur n'est pas accessible par le monde extérieur de Docker (hôte et autres hôtes), mais est accessible par des conteneurs d'autres liens via conteneur

lien

3- -------Pour le cas C, le cotnainer démarré est accessible par le monde extérieur de Docker, et est également accessible par le conteneur de liens

4--------------Pour le cas D, dans en fait, docker Une conversion implicite spéciale est effectuée, ce qui équivaut au cas C. Elle est accessible au monde extérieur et au conteneur du lien (c'est vrai dans ce cas, la raison est que docker pense que puisque vous devez ouvrez le port

Lorsqu'il s'agit du monde extérieur, d'autres conteneurs peuvent certainement y accéder, donc Docker effectue une exposition automatique

Apprentissage recommandé : "Tutoriel vidéo Docker"

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser Docker Desktop Comment utiliser Docker Desktop Apr 15, 2025 am 11:45 AM

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Comment changer la source d'image Docker en Chine Comment changer la source d'image Docker en Chine Apr 15, 2025 am 11:30 AM

Vous pouvez passer à la source de miroir domestique. Les étapes sont les suivantes: 1. Modifiez le fichier de configuration /etc/docker/daemon.json et ajoutez l'adresse source miroir; 2. Après enregistrer et sortir, redémarrez le service Docker Sudo Systemctl Docker pour améliorer la vitesse et la stabilité du téléchargement d'image.

Comment créer un miroir dans Docker Comment créer un miroir dans Docker Apr 15, 2025 am 11:27 AM

Étapes pour créer une image docker: écrivez un dockerfile qui contient les instructions de construction. Créez l'image dans le terminal, en utilisant la commande docker build. Marquez l'image et attribuez des noms et des balises à l'aide de la commande docker tag.

Comment lire la version docker Comment lire la version docker Apr 15, 2025 am 11:51 AM

Pour obtenir la version Docker, vous pouvez effectuer les étapes suivantes: exécutez la commande docker "docker --version" pour afficher les versions client et serveur. Pour Mac ou Windows, vous pouvez également afficher les informations de version via l'onglet Version de la GUI de bureau Docker ou du menu de bureau à propos de Docker.

Comment appeler docker lnmp Comment appeler docker lnmp Apr 15, 2025 am 11:15 AM

Docker LNMP Container Call Étapes: Exécutez le conteneur: docker run -d --name lnmp-container -p 80:80 -p 443: 443 lnmp-stack pour obtenir le conteneur ip: docker inspect lnmp-container | Site Web d'accès Grep iPadress: http: // & lt; contener ip & gt; /index.phpssh Access: docker exec -it lnmp-container bash access mysql: mysql -u roo

Comment construire un référentiel privé par Docker Comment construire un référentiel privé par Docker Apr 15, 2025 am 11:06 AM

Vous pouvez créer des référentiels privés Docker pour stocker et gérer en toute sécurité les images de conteneurs, en fournissant un contrôle et une sécurité stricts. Les étapes incluent: la création d'un référentiel, l'accès, le déploiement d'un référentiel, la poussée d'une image et le tir d'une image. Les avantages incluent la sécurité, le contrôle des versions, la réduction du trafic réseau et la personnalisation.

Comment enregistrer l'image docker Comment enregistrer l'image docker Apr 15, 2025 am 11:54 AM

Pour enregistrer l'image dans Docker, vous pouvez utiliser la commande docker commit pour créer une nouvelle image, contenant l'état actuel du conteneur spécifié, Syntaxe: Docker Commit [Options] Nom d'image de l'ID de conteneur. Pour enregistrer l'image dans le référentiel, vous pouvez utiliser la commande docker push, Syntax: Docker Push Image Name [: Tag]. Pour importer des images enregistrées, vous pouvez utiliser la commande docker pull, syntaxe: docker pull name [: tag].

Comment mettre à jour l'image de Docker Comment mettre à jour l'image de Docker Apr 15, 2025 pm 12:03 PM

Les étapes pour mettre à jour une image Docker sont les suivantes: Tirez la dernière étiquette d'image Nouvelle image Supprimer l'ancienne image pour une balise spécifique (facultative) Redémarrez le conteneur (si nécessaire)

See all articles