How to configure the HMIS (DHIS2)
info
The Instant OpenHIE architecture, codebase, and documentation are under active development and are subject to change. While we encourage adoption and extension of the Instant OpenHIE framework, we do not consider this ready for production use at this stage.
We have implemented District Health Information System v2 (DHIS2) as the Health Management Information System (HMIS) in the Instant OpenHIE. DHIS2 was chosen due to its high level of community support and usage. It is possible to implement a different HMIS software in place of DHIS2.
The default Instant OpenHIE DHIS2 instance is completely blank and can be setup locally using Docker-Compose
or setup in the cloud using Kubernetes
.
To automate configuring DHIS2 for your use case, you will need to create a custom Instant OpenHIE package. The WHO Covid19 Surveillance Package is an example of this kind of custom HMIS configuration.
Below, we cover how you would go about configuring DHIS2 for your use case.
- Docker Compose
- Kubernetes
To configure the DHIS2 instance in Docker we recommend using the jembi/instantohie-config-importer
docker image.
This image allows you to run a custom script with configured volumes to get data into your app containers.
You can implement this container in the config docker-compose script as seen in this example.
In the case of DHIS, our container would use a script like the one here. This script would import your DHIS2 metadata config from a zipped file in the same volume.
To configure the DHIS2 instance in Kubernetes, you will need to set up a job to import the data once the DHIS2 pod is running properly.
See this job snippet for our implementation method.
The import job will use the jembi/instantohie-config-importer
docker image to import the config.
The import script can be found here. Your metadata config zip file should be placed in the same directory as the script.