Bases du cloud et des conteneurs
$ docker run -d -p 8080:80 nginxUn conteneur est démarré par la commande ci-dessus à partir de l'image nginx, un serveur web qui écoute sur le port 80. L'adresse IP de l'hôte est 192.0.2.10, et il n'y a aucune restriction comme un pare-feu. Quelle est l'URL correcte pour joindre ce serveur web depuis un navigateur sur un autre PC du même réseau ?
- Ahttp://192.0.2.10:80/
- Bhttp://(adresse IP du conteneur):8080/
- Chttp://192.0.2.10:8080/
Afficher la réponse et l'explication
Réponse : C. http://192.0.2.10:8080/
L'option s'écrit -p port de l'hôte:port du conteneur ; -p 8080:80 transfère donc le trafic qui arrive sur le port 8080 de l'hôte vers le port 80 du conteneur. Depuis un autre PC, on se connecte au port 8080 de l'adresse IP de l'hôte. L'adresse IP du conteneur appartient généralement à un réseau virtuel interne à l'hôte et n'est pas directement joignable depuis d'autres PC. EXPOSE 80 dans un Dockerfile ne fait qu'indiquer le port qu'utilise le conteneur ; cela ne publie à lui seul aucun port de l'hôte, d'où la nécessité de -p.
Continuer : 9 autres questions sur Bases du cloud et des conteneurs