このインスタンスをインターネットで利用できるようにするつもりであれば、app.ymlで.localドメインを使用すると問題が発生します。これは自宅でのみ、またはテストでのみ使用するつもりである可能性がありますが、言及する価値があると思いました。
Dockerネットワークが正しく機能し、コンテナがホストマシンからそのIPアドレスで到達可能であると仮定すると、DNSでdiscourse.simonz.localをそのIPアドレスに向ける必要もあります。
現在発生しているのは、ドメインがホストマシンに解決されており、アクセスしようとするときにポートを指定していない(例:「discourse.simonz.local:1234」)ため、Dockerコンテナではなくnginxに到達しているようです。
Discourseを別のポートで利用できるようにしたい場合、通常は別のIPアドレスで利用できるようにする必要はありません。標準ポートで利用できるようにしたい場合、および標準ポートでnginxを利用できるようにしたい場合は、DNSで正しいIPに向けるか、nginxでDiscourseをプロキシする必要があります。
.localドメインは通常、システムが設定されたホスト名に基づいてアナウンスします。Discourseは通常、それを必要としないため、コンテナにはそれを行うためのものが何もない可能性があります。
標準ポート、異なるIP、DNSのルートに進みたい場合は、Discourseの範囲外であり、セットアップはネットワークのさまざまな要因に依存します。
ホスト上でnginxとDiscourseの両方で利用できるようにすることが目標である場合は、上記でリンクしたプロキシアプローチをお勧めします。これも技術的にはサポートされていないインストールですが、より一般的なセットアップであり、より多くの人が支援できるはずです。