Erreur 'dial tcp: lookup my-service: no such host' en Go

patricia-bouvet 21/05/2026
RÉSOLU

J'ai un service Go qui tourne dans un pod Kubernetes et qui essaie de contacter un autre service via son nom DNS interne (my-service.default.svc.cluster.local). J'ai systématiquement dial tcp: lookup my-service: no such host.

Le service est pourtant bien up et possède un endpoint valide. Une idée sur ce qui pourrait bloquer la résolution DNS dans mon conteneur ?

21/05/2026 à 11:34

4 commentaires

colette07
Membre Actif
Avatar de colette07
colette07
Membre Actif

Est-ce que tu utilises une image scratch ou alpine sans les bibliothèques C standard ? Go utilise netgo par défaut, mais s'il y a une dépendance CGO, il essaie d'utiliser glibc qui cherche /etc/nsswitch.conf.

Vérifie si ton Dockerfile contient bien les certificats CA et si le fichier /etc/resolv.conf n'est pas écrasé par ton application.

22/05/2026 à 08:34

Mon image est effectivement basée sur alpine. Je vais essayer de recompiler mon binaire avec CGO_ENABLED=0 pour forcer l'usage du resolver Go pur.

23/05/2026 à 01:29

Exactement, CGO_ENABLED=0 règle souvent ce genre de problèmes de résolution DNS sur les images minimalistes. C'est le réflexe à avoir en premier.

23/05/2026 à 23:27

C'était bien ça ! Le binaire compilé avec CGO_ENABLED=0 résout parfaitement le DNS maintenant. Merci beaucoup pour le coup de main.

24/05/2026 à 22:00

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire