@pfaffman — @Matthew_Lucas utilise déjà le modèle avec socket, pourtant…
J’utilise définitivement localhost pour mon proxy externe, et cela devrait fonctionner avec le réglage expose. Je ne m’attendrais pas à ce qu’il ait besoin d’utiliser l’IP de docker. Et je ne m’attendrais pas à ce que cela échoue uniquement avec Apache devant le conteneur docker pour cette raison.
Vous pourriez avoir besoin d’une configuration d’en-tête — voir Add an offline page to display when Discourse is rebuilding or starting up - #2 by codinghorror
J’ai fait de mon mieux pour oublier la configuration Apache, mais cette section de la configuration nginx est quelque chose que vous voudriez savoir comment reproduire avec Apache, je pense.
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Real-IP $remote_addr;
En particulier, je ne pense pas que cela fonctionne correctement sans l’en-tête Host.
Puisque vous n’utilisez pas HTTPS, vous devriez pouvoir utiliser tcpdump pour capturer des traces de paquets afin de voir exactement ce qui ne va pas.
Cependant, pourquoi mettre Apache là-dedans du tout ? C’est juste un obstacle supplémentaire. Si j’essayais quelque chose comme ça, je configurerais l’équilibreur de charge Amazon pour qu’il communique directement avec le port 8000 sur l’instance EC2. Je suppose que vous terminez HTTPS sur l’ELB de toute façon. Je soupçonne que leur équilibreur de charge connaît les en-têtes normaux à ajouter sans que vous ayez besoin de les spécifier, mais sinon, bien sûr, allez-y et définissez-les. Assurez-vous simplement que le port est accessible via le pare-feu.
Je doute d’avoir beaucoup plus de valeur à apporter ici, mais j’espère que certaines de ces informations vous aideront dans votre configuration. Bonne chance.