EDDYMENS

MIS

How To Install Apache Fineract With Docker

Table of contents

Introduction

In this guide, we will walk through the steps to isntall Apache Fineract [↗] using Docker. This setup includes the Community App (UI) [↗], which provides a web interface to interact with the Fineract APIs.

Checkout my What is Fineract guide [→] if you are new to Fineract.

Prerequisite: Ensure you have Docker [↗] and Docker Compose installed before proceeding.

Clone the repository

Start by cloning the official Fineract repository and navigating into the project directory:

01: git clone https://github.com/apache/fineract.git 02: cd fineract

Modify docker-compose.yml

The docker-compose.yml file found in the repository doesn't include the community UI. To add it, append the following servide definition to your file.

Note: Ensure this is at the same indentation level as the fineract and db services.

docker

01: community-app: 02: image: openmf/community-app:latest 03: ports: 04: - "9090:80" 05: environment: 06: - FINERACT_API_URL=https://localhost:8443/fineract-provider/api/v1 07: - TENANT_ID=default 08: - API_URL=https://localhost:8443/fineract-provider/api/v1 09: depends_on: 10: - fineract

Launch the Containers

Start the services in detached mode:

$ docker-compose up -d

Give it a few minutes, especially the first time.

Access the services

Once everything is up:

Fineract API

$ https://localhost:8443/fineract-provider/api/v1/

Community App (UI)

$ http://localhost:9090/?baseApiUrl=https://localhost:8443/fineract-provider/api/v1/#/

Note: We append the baseApiUrl to the UI address so the application knows exactly where to find the Fineract backend.

Login credentials

Use the following default credentials to log in:

  • Username: mifos
  • Password: password

A few notes

HTTPS warning

Your browser will warn you about SSL,just proceed anyway (local dev).

Database takes time

MariaDB needs time to initialize. If Fineract fails:

$ docker-compose restart fineract

Ports Mapping

  • 8443: Fineract API

  • 9090: UI

  • 5000: Debugging

Make sure nothing else is using them.

Logs & Debugging

Run docker-compose logs to debug.