Can one Digital Ocean account host several instances of Discourse, and would each instance require an extra 2GB of RAM?

December 8, 2016 691 views
Applications

Hello. I'm looking to set up a bunch of bloggers, all with their own domains, under one instance of Discourse so that their commentariat is all connected. I was told by Discourse this wouldn't quite be possible, but that (if I understood correctly) each blogger could have their own instance of Discourse and that "you could connect them by having one of these instances act as the SSO provider for the rest." That being so, can one Digital Ocean account host more than one instance of Discourse, and if so, would each instance would require an extra 2GB of RAM, or just 2GB in total for no matter how many instances?

Thanks!

1 Answer

While it may be possible to do it with less, since the officially recommend method for installing Discourse uses separate docker containers I would recommend planning on at least 1-1.5GB for each. While you could likely better share resources among multiple instances by doing a manual installation directly on your droplet this method is not supported or well documented and could likely lead to problems finding answers if you ran into trouble.

  • Gotcha, thanks for that. Would you therefore recommend that every instance of Discourse be in its own Digital Ocean account, or would it instead be possible to have multiple Dockers, each with one instance of Discourse installed into, in a single Digital Ocean account?

    I ask because I am looking into setting up multiple blogs with Discourse, each blog with its own instance, each then connected by a SSO. This would obviously be way too expensive to do with Discourse themselves, hence my inquiry of doing it via Digital Ocean, and my query of whether or not it can all be done within one Digital Ocean account.

    • Either solution could work. If I was to do this on a single server I would likely have multiple discourse containers with a single copy of nginx using proxy_pass to assign each discourse instance to a different subdomain/domain or directory.

      This setup should be lighter on resource usage than having a single droplet for each instance but knowing just how much lighter would mean some testing. It would, however also mean that you'd have a single point of failure for more of your forums and could be a bit more complex to administrate.

      On the other hand you could also choose to have a number of droplets each running one or two discourse forums with your nginx reverse proxy running on a droplet of it's own, passing public requests across the private network to your discourse droplets.

      I would recommend asking about the options you are considering on the discourse meta forum as there are likely people there who have real world experience with different methods and they might have more input on which methods would better meet your needs, how many discourse containers you can run on a given amount of resources and what worked best for them.

Have another answer? Share your knowledge.