Maison >développement back-end >Golang >Comment rendre un serveur WebSocket accessible depuis l'extérieur d'un conteneur Docker ?
Dockerisation d'un serveur WebSocket
Afin de dockeriser un serveur WebSocket, il est nécessaire de résoudre le problème de l'écoute basée sur localhost au sein du Environnement Docker.
Le problème
Lorsqu'un serveur WebSocket est configuré pour écouter sur localhost:8000, il devient inaccessible depuis l'extérieur du conteneur Docker. En effet, localhost se résout en 127.0.0.1, une adresse de bouclage qui n'est pas accessible de l'extérieur.
Le correctif
Pour résoudre ce problème, l'adresse d'écoute du serveur doit être remplacé par ":8000", qui demande au serveur d'écouter toutes les adresses IP de son conteneur. Cela permet au trafic d'être transféré vers le conteneur et d'atteindre le serveur.
Informations supplémentaires
Docker utilise les règles iptables pour faciliter la redirection de port. Ces règles peuvent être visualisées à l'aide des commandes suivantes :
iptables -n -L iptables -t nat -n -L
En exposant les ports dans un conteneur Docker, il est possible de créer un serveur WebSocket accessible publiquement qui peut communiquer avec les clients en dehors du conteneur.
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!