┌─────────┐ ┌──────────┐
│ │ │ │
│ │ │ │
│ │ │ │
└─────────┘ └──────────┘
PostgreSQL MySQL
▲ ▲
│ │
│ │
│ │
┌────┴────┐ ┌─────────┐ ┌─────┴────┐
│ │ │ │ │ │
│ │◄───────────┤ │ │ │
│ │ │ │ │ │
└─────────┘ └─────────┘ └──────────┘
DHIS2 Application Backend Main Website
▲
│
│
│
┌─────┴────┐
│ │
│ │
│ │
└──────────┘
Application
──────────────────────────────────────────────────────────────────
┌──────────┐
│ │
│ │
│ │
└──────────┘
Nginx
DHIS2 is deployed as dhis2
user on tomcat9
. The deployment follows the DHIS2 official deployment guide.
DHIS2 is served via the manager
subdomain.
DHIS2 is backed by Postgresql. PostgreSQL installation is done based on the recommendations in the DHIS2 official deployment guide.
Nginx is used as the webserver and the proxy. Configurations of Nginx can be found in the nginx
folder.
Nginx serves following components
- The Yogi Application
- Yogi Application backend
- DHI2
- Main Wordpress website
- Monit
The main website https://srisambuddhamission.org/ runs on Wordpress. Wordpress has been configured with Nginx based on this guide.
Wordpress uses MySQL as the database.
Yogi application is a React app based on the SurveyJS app. Application is served via the application
subdomain.
Yogi application backend is a wrapper for DHIS2 API to perform some complex operations and make some endpoints publicly accessible. Backend is a NodeJS application and deployed with pm2
.
Application is served via the application
subdomain and /api
path.
NOTE: DHIS2 doesn't support MySQL and Wordpress doesn't support PostgreSQL. Hence the two DB servers.
The deployment uses monit for monitoring and configurations for monitoring can be found in the monit
folder.
Monit is served via the monit
subdomain.