The discussion revolves around setting up a high availability 3 server setup for Discourse behind a standalone load balancer. andy212 asks if Discourse supports running multiple containers on different machines, and Falco confirms it does.
Falco also advises andy212 to configure object storage for uploaded logos and other files, and provides a link to the relevant guide.
When andy212 encounters an issue with SSL termination on the load balancer, Falco provides a solution by setting SiteSetting.force_https = true in the rails console.
andy212 asks how to achieve this in the app.yml file, and Falco points to an example in the sample file.
andy212 also asks if the docker container is monitored and if it will restart if it stops, and riking confirms that launcher asks Docker to autorestart the containers.
Later, andy212 asks about running multiple machines with the same setup, and riking provides two options: using ./launcher start-command app or copying the app.yml over and running launcher start.
Additionally, pfaffman suggests setting the DISCOURSE_FORCE_HTTPS environment variable to true to make Discourse aware of HTTPS links.
Does Discourse support multiple machines (each with a single docker container) behind a standalone load balancer?
I require a Discourse setup to handle the failure of a server, so my standard response is to configure 3 servers behind a load balancer (with the LB handling the SSL certificate).
I have configured standalone external postgres and redis servers for Discourse. (This is all on Google Cloud Platform). I am using the Discourse launcher to configure the web-only docker container.
Does Discourse support running multiple containers when each container is on a different machine?
Should I just copy the created docker container from the first machine to the other machines?
How are uploaded logos handled?
Are uploaded logos, favicons, etc stored in the database?
Okay. So I have now have a working discourse on a single machine. I have two other machines. The docker guest /shared volume is pointed to an NFS directory to allow all machines to access the uploads (esp. logos, etc).
I have copied the docker images to the machines 2 and 3 (docker save -o app-image local_discourse/app and then docker load -i app-image.
I was under the impression that a simple ./launcher start app would work, but it attempts to check containers/app.yml.
Will I run into problems if I allow the app.yml to be checked (and changes made) to the DB from machine 2 and 3?
Is there a better way to have three machines running a single setup?