L’adresse IP 172.17.0.1 est probablement une adresse IP Docker. Je suppose que les journaux que vous avez partagés proviennent du service nginx dans le conteneur Discourse. Mon hypothèse est que le nginx de votre hôte envoie la requête au nginx de Discourse, et que le nginx de Discourse voit l’adresse IP du nginx de votre hôte.
Vous devriez pouvoir résoudre le problème soit en définissant l’adresse IP réelle dans Discourse sur la valeur d’un en-tête envoyé par le nginx de l’hôte, soit en utilisant un socket pour connecter les services nginx.
Par exemple, dans le nginx de l’hôte, vous ajoutez proxy_set_header X-Real-IP $remote_addr;, et dans le nginx du conteneur Discourse, vous utilisez l’adresse IP réelle selon cet en-tête avec set_real_ip_from 0.0.0.0/0; (en supposant que le nginx de Discourse n’est pas accessible publiquement) et real_ip_header X-Real-IP;. Vous aurez probablement besoin d’un modèle ou d’exécuter une commande sed pour l’inclure dans le fichier de configuration nginx de Discourse.
Une autre option consiste à utiliser des sockets et d’inclure le fichier web.socketed.template.yml conformément à :
Cependant, ma recommandation, si cela est abordable, est d’utiliser Discourse sur son propre serveur, sans avoir à utiliser nginx comme proxy inverse en amont, ce qui rendrait la configuration beaucoup plus simple et plus facile à mettre en œuvre.