Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Tip

This page documents how to get Crater (open source billing software) running using docker. If you haven’t yet setup Bahmni on docker, please see the documentation here first: Getting Bahmni Quicky Started with Docker

Prerequisites:-

Info

You can find full setup of crater and crater-atomfeed with Bahmni in this given module.

About OpenMRS

As OpenMRS is the backend service on top of which Bahmni EMR UI runs, if any patient is created in Bahmni, it will be auto-created in Crater. So you need to check Openmrs environment variables and ensure OpenMRS is running fine (and you can create patients in OpenMRS via Bahmni Registration screen).

About crater-atomfeed

Crater-atomfeed is the service running to connect Bahmni to crater (it is the integration bridge between the two services). So to run crater we need crater-atomfeed also running.

Check crater atomfeed configration (in .env file):

  1. In .env file, go to

crater-atomfeed validate the openmrs and crater configurations.

  1. Validate the database configuration of

crater-atomfeed-db service.

About Crater

Crater configration can be checked under crater-nginx section, mentioned port is localhost:81 (by default).

Currently we are using MySQL database for crater which we can checked in docker-compose file->craterdb section currently running port of database can also be checked there, to change or add any configuration change credentials under craterdb section of docker-compose file. To validate the creds like username and password go into .env file of bahmni-docker.

Info

Once you understood why we need crater-atomfeed and openmrs with crater you can start setting up crater.

Running Crater using Docker

Now run the profile of crater using the command (note: you can also run profile bahmni-lite, which brings all services up: OpenMRS and Crater in one shot).

Code Block
languagenone
docker-compose --profile crater up -d

To run crater and bahmni altogether you will also need to run openmrs and crater atomfeed use the command

Code Block
docker-compose --profile crater-atomfeed --profile openmrs up -d

If all (crater,crater-atomfeed and openmrs ) are up then your console will show :-

To Check the logs follow the steps:-

  • Code Block
    languagenone
    docker ps | grep <name of the container whose logs you want to check>

    Image Modified

    Through the above command you will get the container ID of the container whose logs you want to check and will also show whether the container is up or not

  • Code Block
    languagenone
    docker logs -f <CONTAINER ID>

    Image Modified

Tip

Crater Up and Running: If the docker container are up and running fine, open your browser on https://localhost:81 . That’s it!

Making Code Changes to Crater Atomfeed

If during development you want to make any change in the backend code of crater-atomfeed then maven build the backend code a jar will be created paste it in Dockerfile in package->docker->Dockerfile now build the docker project using the command

Code Block
languagenone
docker build -t bahmni/crater-atomfeed:test -f package/docker/Dockerfile .

An image with name crater-atomfeed:test will be created now change the image in crater-atomfeed to bahmni/crater-atomfeed:test
and run the command

Code Block
languagenone
docker-compose --profile openmrs --profile crater --profile crater-atomfeed up -d

Configuring Default Currency in Crater


During the the fresh setup of crater one can configure the preferred currency in the .env file from where the docker compose is invoked.
For example if you are invoking docker compose from bahmni-docker the below changes can be made in .env under crater environment variables

Code Block
CRATER_DEFAULT_CURRENCY=USD

please find different currency codes here https://github.com/Bahmni/crater/blob/bahmni-master/database/seeders/CurrenciesTableSeeder.php

In docker compose.yml file add the below under crater-php service:

Code Block
CRATER_DEFAULT_CURRENCY: ${CRATER_DEFAULT_CURRENCY:?}

After making these changes run
docker compose down with volume and then bring up crater .
With these changes you should be able to configure the preferred currency as default currency in crater.

Info

Running Bahmni on Docker

Page Tree
rootRunning Bahmni on Docker
startDepth1