multiple instances of kobotoolbox on single server

We’re looking to install multiple KoboToolbox instances on a single server as we expect that we will have multiple clients who will want their own version of KoboToolbox.

We would also like to seperate the database containers and have them running on a dedicated database server.

It is expected that the clients will want this to run in a clustered environment, as such the cost of separate servers for each instance of KoboToolbox will be very significant.

We have followed the installation instructions of the Kobo-Docker repo and found that easy to implement and work with, however attempting to create a second instance of KoboToolbox on the same server causes the Nginx containers to have a port conflict.

We have not yet looked into using an external database for a KoboToolbox install, though it seems that the connection strings in the kobocat.txt file under envfiles might be the way to go.

We were wondering if you could provide some instruction on:

  1. Hosting multiple KoboToolbox installs on a single node in a clustered environment.

  2. Hosting the databases on a seperate server.

  3. Have you had a client with this kind of high availability architectural mindset? How would you handle that?

Hello Ashley,

This thread is stale so you may have answered your own questions by now. If not, click here to read about running KoboToolbox behind a reverse proxy. Running behind a reverse proxy makes it trivial to start as many KoboToolbox instances as you’d like.

Placing the databases on another server should be possible. Docker swarm mode looks like a way to go.

Regards,
Jake

···

On Wednesday, March 15, 2017 at 11:26:32 PM UTC-4, Ashley Maher wrote:

We’re looking to install multiple KoboToolbox instances on a single server as we expect that we will have multiple clients who will want their own version of KoboToolbox.

We would also like to seperate the database containers and have them running on a dedicated database server.

It is expected that the clients will want this to run in a clustered environment, as such the cost of separate servers for each instance of KoboToolbox will be very significant.

We have followed the installation instructions of the Kobo-Docker repo and found that easy to implement and work with, however attempting to create a second instance of KoboToolbox on the same server causes the Nginx containers to have a port conflict.

We have not yet looked into using an external database for a KoboToolbox install, though it seems that the connection strings in the kobocat.txt file under envfiles might be the way to go.

We were wondering if you could provide some instruction on:

  1. Hosting multiple KoboToolbox installs on a single node in a clustered environment.
  1. Hosting the databases on a seperate server.
  1. Have you had a client with this kind of high availability architectural mindset? How would you handle that?