Wow, that’s quite a complicated topic with lots of ifs and buts.
Today I also tried my hand at the setup and unfortunately failed miserably. The instructions have good intentions, but in my opinion they are not so easy to understand/comprehend.
When I work with Docker, I usually want the containers to run separately/isolated from each other. Not too many dependencies, prerequisites and “single points of failure”. But these are exactly the problems that are caused by the approach: NPM is a great tool. I don’t understand why I have to make special adjustments to its Docker configuration from the Proxy Manager to make Discourse happy and provide it with certificates. At home, I also use the NPM for my DynDNS domain so that I can flexibly assign services and hosts at any time. And to have some of them public (Home Assistant, Grafana, …).
I wanted to merge my two Discourse instances today. I have specially rented a cloud server from Hetzner/Germany. That’s why DIscourse wasn’t pre-installed, as the instructions assume.
I wish Discoruse would officially offer the installation with NPM by default. Or at least not make so much trouble with the ./discourse-setup script.