Existe uma maneira de especificar DISCOURSE_PORT ao lado de DISCOURSE_HOSTNAME?

Você não pode acessar o Discourse em um navegador da web em uma porta não padrão. Veja Como configurar o Discourse em um servidor com sites Apache existentes. Há também um tópico semelhante para o nginx, mas você só precisa da parte do Discourse, então este deve funcionar para você.

Você também precisa remover os modelos ssl e let’s encrypt. Além disso, não há necessidade de expor a porta 443.