


Comment exposer un port d'un conteneur Docker à la machine h?te?
Jul 12, 2025 am 01:33 AMPour exposer le port de conteneur Docker, l'h?te doit accéder au service de conteneur via le mappage de port. 1. Utilisez la commande docker run -p [host_port]: [conteneur_port] pour exécuter le conteneur, tel que docker run -p 8080: 3000 my-web-app; 2. Utilisez la directive Expose pour marquer l'objectif dans le dockerfile, comme Expose 3000, mais le port ne sera pas automatiquement publié; 3. Configurez le segment des ports du fichier YML dans Docker Compose, tels que les ports: - "8080: 3000"; 4. Utilisez Docker PS pour vérifier si le mappage du port est efficace après l'exécution. Les méthodes ci-dessus garantissent que le port de conteneur est correctement exposé et vérifié.
Exposer un port à partir d'un conteneur Docker à la machine h?te est une tache courante lors de l'exécution de services comme des serveurs Web, des API ou des bases de données à l'intérieur des conteneurs. La clé consiste à mapper le port interne du conteneur sur un port de votre système h?te afin que vous puissiez y accéder à partir de Docker extérieur.
1. Utilisez l'indicateur -p
avec docker run
Le moyen le plus simple d'exposer un port est d'utiliser l'indicateur -p
(ou --publish
) lors de l'exécution d'un conteneur avec docker run
.
Syntaxe de base:
docker run -p [host_port]: [contener_port] [image_name]
Par exemple, si vous exécutez une application Web à l'intérieur du conteneur qui écoute le port 3000:
docker run -p 8080: 3000 my-web-app
Vous pouvez maintenant accéder au service via http://localhost:8080
sur votre machine h?te.
- Vous pouvez spécifier plusieurs ports en répétant l'indicateur
-p
. - Si vous omettez le port h?te (
-p 3000
), Docker affectera automatiquement un port disponible aléatoire. - Cela fonctionne pour TCP et UDP; Utilisez
-p 53:53/udp
pour exposer spécifiquement les ports UDP.
2. Définissez les ports dans un dockerfile avec EXPOSE
Vous pouvez documenter les ports que votre image utilise en ajoutant l'instruction d' EXPOSE
dans votre dockerfile:
Exposer 3000
Cependant, cela ne publie pas réellement le port - vous devez toujours utiliser -p
lors de l'exécution du conteneur. Considérez EXPOSE
comme des métadonnées pour quiconque dirige le conteneur plus tard.
Si vous construisez une image que d'autres utiliseront, y compris EXPOSE
, les aide à savoir quels ports sont pertinents sans deviner.
3. Utilisez Docker Compose avec la section ports
Si vous utilisez Docker Compose, définissez les mappages de ports dans la section ports
dans votre fichier docker-compose.yml
:
services: WebApp: Image: my-web-app PORTS: - "8080: 3000"
Cela a le même effet que l'indicateur -p
mais maintient votre configuration centralisée et contr?lée par la version.
- Vous pouvez également utiliser une syntaxe courte comme
"3000"
pour permettre à Docker affecter un port h?te aléatoire. - Pour plus de contr?le, utilisez une syntaxe longue avec des options supplémentaires comme le protocole ou le mode.
4. Vérifiez les ports ouverts avec docker ps
Après avoir démarré votre conteneur, vérifiez le mappage du port avec:
docker ps
Regardez la colonne "Ports". Cela devrait montrer quelque chose comme:
0.0.0.0:8080->3000/TCP
Cela confirme le port 8080 de votre h?te vers le port 3000 dans le conteneur.
Si vous ne voyez aucun port répertorié, revérifiez correctement les -p
ou ports
configurés.
Et c'est essentiellement ?a. Exposer les ports n'est pas compliqué une fois que vous savez comment Docker les mappe, mais il est facile d'oublier un petit détail comme oublier le drapeau -p
ou supposer que EXPOSE
fait plus que.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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

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

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

1. L'origine de .netcore Lorsque vous parlez de .Netcore, nous ne devons pas mentionner son prédécesseur .NET. Java était sous les projecteurs à l'époque, et Microsoft a également favorisé Java. La machine virtuelle Java sur la plate-forme Windows a été développée par Microsoft en fonction des normes JVM. On dit que c'est la meilleure machine virtuelle Java Performance à l'époque. Cependant, Microsoft a son propre petit Abacus, essayant de regrouper Java avec la plate-forme Windows et d'ajouter des fonctionnalités spécifiques à Windows. L'insatisfaction de Sun à l'égard de cela a conduit à une rupture de la relation entre les deux parties, et Microsoft a ensuite lancé .NET. .NET a emprunté de nombreuses fonctionnalités de Java depuis sa création et a progressivement dépassé Java dans les fonctionnalités linguistiques et le développement de la forme. Java dans la version 1.6

Pour développer une application Web Python complète, suivez ces étapes: 1. Choisissez le cadre approprié, tel que Django ou Flask. 2. Intégrez les bases de données et utilisez des orms tels que Sqlalchemy. 3. Concevez le frontal et utilisez Vue ou React. 4. Effectuez le test, utilisez Pytest ou Unittest. 5. Déployer les applications, utiliser Docker et des plates-formes telles que Heroku ou AWS. Grace à ces étapes, des applications Web puissantes et efficaces peuvent être construites.

Il existe trois fa?ons d'afficher les informations de processus dans le conteneur Docker: 1. Utilisez la commande docktop pour répertorier tous les processus dans le conteneur et afficher PID, utilisateur, commande et autres informations; 2. Utilisez DockErexec pour entrer le conteneur, puis utilisez la commande PS ou TOP pour afficher les informations détaillées du processus; 3. Utilisez la commande dockerstats pour afficher l'utilisation des ressources de conteneur en temps réel et combinez le dockertop pour bien comprendre les performances du conteneur.

Le déploiement d'une application Pytorch sur Ubuntu peut être effectué en suivant les étapes: 1. Installez d'abord Python et PIP, assurez-vous que Python et PIP sont déjà installés sur votre système. Vous pouvez les installer en utilisant la commande suivante: SudoaptupDaSudoaptInstallpython3PyThon3-PIP2. Créez un environnement virtuel (facultatif) pour isoler votre environnement de projet, il est recommandé de créer un environnement virtuel: Python3-MvenvmyenvsourceMyenv / bin / Activatet

Le déploiement et le réglage de Jenkins sur Debian est un processus impliquant plusieurs étapes, notamment l'installation, la configuration, la gestion du plug-in et l'optimisation des performances. Voici un guide détaillé pour vous aider à réaliser un déploiement efficace de Jenkins. Installation de Jenkins en premier, assurez-vous que votre système a un environnement Java installé. Jenkins nécessite un environnement d'exécution Java (JRE) pour fonctionner correctement. SudoaptupDaSudoaptininstallOpenjdk-11-JDK vérifie que l'installation de Java est réussie: Java-Version Suivant, Ajouter J

Il existe deux fa?ons de comparer les différences dans différentes versions d'image Docker: 1. Utilisez la commande dockerdiff pour afficher les modifications du système de fichiers de conteneur; 2. Utilisez la commande dockerhistory pour afficher la différence de hiérarchie dans le batiment d'image. Ces méthodes aident à comprendre et à optimiser le versioning d'image.

Un moyen efficace d'arrêter par lots d'un conteneur Docker comprend l'utilisation de commandes et d'outils de base. 1. Utilisez la commande dockerrsop $ (dockerps-Q) et ajustez l'heure du délai d'expiration, telles que dockertsop-t30 $ (dockerps-Q). 2. Utilisez des options de filtrage dockerps, telles que dockerrsop $ (dockerps-q - filtre "label = app = web"). 3. Utilisez la commande dockercompose docker-composedown. 4. écrivez des scripts pour arrêter les conteneurs dans l'ordre, tels que l'arrêt de la base de données, de l'application et des conteneurs Web.

Grace à la technologie Docker Containerisation, les développeurs PHP peuvent utiliser PHPStorm pour améliorer l'efficacité du développement et la cohérence environnementale. Les étapes spécifiques incluent: 1. Créez un dockerfile pour définir l'environnement PHP; 2. Configurez la connexion Docker dans PHPSTorm; 3. Créez un fichier dockercompose pour définir le service; 4. Configurez l'interprète PHP distant. Les avantages sont une forte cohérence environnementale, et les inconvénients incluent le long temps de démarrage et le débogage complexe.
