私はこの分野は初めてなので、この2つの指示が互いに矛盾しているように思えます。
一方では、トンネルが http://localhost:80 経由でDiscourseと通信するように提案されていますが、その後、設定ですべてをHTTPS経由で強制しますか?
トンネルがエッジでSSLハンドシェイクを提供し、その後localhostへのトンネルは証明書なしで実行できるため、SSLなしでポート80でローカルに作業することを推奨していますか?
Caddyで更新可能なローカル証明書を設定できますか? app.yml にキーと証明書の設定を提供する方法はありますか?
おそらく、DISCOURSE_FORCE_HTTPS: true に関して検索で見つかったことの解釈を誤っており、それがDiscourse自体がどのポート/モードで実行されるかとは関係なく、HTTPS経由でリンク/画像をロードするように指示されていることを反映しているだけでしょうか?