Hey everyone! I have read various posts on here to no avail so I figured I would explain my current setup in detail in hopes that someone may have some feedback for me to resolve the Issue.
I’m currently running an Unraid server. Unraid hosts docker containers as well as VMs. I have a Nginix Reverse Proxy Manager (NPM) running in a docker container that handles reverse proxies for all my other docker containers I run. My firewall is set to send all WAN traffic on ports 80/443 to NPM and I redirect traffic within NPM to my containers.
I followed the following guide: discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub
It does indicate its for installation on a cloud server, though mine is a bare metal machine here self hosted.
System information as of Sun Jan 28 07:35:54 AM UTC 2024
System load: 0.5126953125
Usage of /: 45.9% of 13.16GB
Memory usage: 6%
Swap usage: 0%
Users logged in: 0
IPv4 address for docker0: 172.17.0.1
IPv4 address for enp1s0: 10.30.20.150
I booted up a VM in unraid, installed ubuntu server, set a static IP address, installed docker, and downloaded discourse. Upon running the setup I get the following error.
Hostname for your Discourse? [discourse.example.com]: forum.mydomain.net
Checking your domain name . . .
WARNING: Port 443 of computer does not appear to be accessible using hostname:
WARNING: Connection to (port 80) also fails.
This suggests that forum.mydomain.net resolves to some IP address that does not reach this
machine where you are installing discourse.
The first thing to do is confirm that forum.mydomain.net resolves to the IP address of this server.
You usually do this at the same place you purchased the domain.
If you are sure that the IP address resolves correctly, it could be a firewall issue.
A web search for "open ports YOUR CLOUD SERVICE" might help.
This tool is designed only for the most standard installations. If you cannot resolve
the issue above, you will need to edit containers/app.yml yourself and then type
./launcher rebuild app
I am able to ping my Ubuntu VM at the static IP assigned it at 10.30.20.150 from my NPM container. I have setup my NPM config to target https 10.30.20.150 port 443 as well as http port 80 to no avail. When the setup fails, it seems to close the discourse container within the VM?
Is there any work around for this?
Possibly, edit my firewall ports to bypass the reverse proxy and target the VM directly so that it can get a certificate and run the container, and then once running be able to manually edit the config.yml to use my reverse proxy?
Could I edit the install somehow to not ask for an SSL cert, and run on port 80, then handle getting an SSL cert though NPM?
Lastly I did see in a few posts that there is a ‘production’ and ‘development’ version of discourse… it seems that the dev version can be ran html on a local port? If this is true, i imagine i could easily put everything behind my reverse proxy easier…? From what i had read the production package is easier to keep updated and may have performance improvements.
Id greatly appreciate some help, feedback, or suggestions on the matter