Maison >développement back-end >Golang >Pourquoi mon application Go obtient-elle « Échec de réception : connexion réinitialisée par un homologue » lors de son exécution dans un conteneur Docker ?

Pourquoi mon application Go obtient-elle « Échec de réception : connexion réinitialisée par un homologue » lors de son exécution dans un conteneur Docker ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-16 05:19:03506parcourir

Why Does My Go App Get

Problème d'exposition du port Docker : résolution de « Échec de la réception : réinitialisation de la connexion par un homologue »

Lors de la tentative d'exécution d'un binaire d'application Go dans un Docker conteneur, les utilisateurs peuvent rencontrer un problème où l'application ne parvient pas à recevoir des connexions externes. Cette erreur se manifeste par « Échec de la réception : réinitialisation de la connexion par un homologue » lors de l'appel des commandes curl.

La source de ce problème réside dans la configuration réseau du conteneur. Lorsque l'application est exécutée dans le conteneur, la commande suivante est généralement utilisée :

http.ListenAndServe("localhost:8081", nil)

Cependant, cette configuration permet uniquement d'établir des connexions à partir du conteneur lui-même. Pour résoudre ce problème et activer l'accès externe à l'application, la commande doit être modifiée comme suit :

http.ListenAndServe(":8081", nil)

En omettant le préfixe "localhost", l'application s'ouvre aux connexions provenant à la fois de l'intérieur et de l'extérieur du conteneur. . Cette modification permet une communication externe appropriée avec l'application lorsqu'elle est exécutée dans un environnement 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:
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