Это слишком сложно для полного понимания, поэтому воспринимайте это скорее как догадку, чем как готовое решение. Если проблема в том, что вы не можете подключить что-либо к вашему работающему контейнеру Docker через localhost, попробуйте использовать IP-адрес Docker. Также возможно использовать шаблон веб-сокетов и работать через сокет вместо порта. Некоторые считают, что это предпочтительнее по ряду причин.
Мнение MKJ о конфигурации развёртывания Discourse может быть полезным для чтения.