This is currently work in progress: 


How to run fineract-cn public Docker images


There are public repositories in DockerHub for fineract-cn: 

MicroserviceDockerHub URL
Provisioner Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-provisioner/tags 
Identity Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-identity/tags 
Office Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-office/tags 
Customer Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-customer/tags 
Accounting Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-accounting/tags 
Portfolio Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-portfolio/tags 
Deposit Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-deposit-account-management/tags 
Teller Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-teller/tags 
Reporting Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-reporting/tags 
Cheques Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-cheques/tags 
Payroll Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-payroll/tags 
Group Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-group/tags 
Notification Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-notifications/tags 
Rhythm Servicehttps://cloud.docker.com/repository/docker/apache/fineract-cn-rhythm/tags 
Fims Web Apphttps://cloud.docker.com/repository/docker/apache/fineract-cn-fims-web-app/tags


Running a micro service public image

docker run apache/fineract-cn-xxx:latest

Or if you want to run specific version

docker run apache/fineract-cn-xxx:version.number.goes-here

You need to generate keys and pass them to docker images as environmental variables: https://github.com/apache/fineract-cn-docker-compose

How the Docker Hub has been set up


Autobuild has been configured to follow the same principles as already used with publishing to JFrog Artifactory - this means that one can trigger a build by pushing to branch "develop" and by creating a release (tag) in Github. The only exception is that pushing to other branches besides "develop" doesn't trigger creating image in Docker Hub.

Dockerhub autobuild configuration:

Docker Tag

SourceImage name
latestdevelop

apache/fineract-cn-projectname:latest

Previous build is overwritten.

release-{sourceref}

/^REL([0-9.]+)$/

-Without this configuration Docker Hub doesn't work. No build should actually trigger this.

{\1}-{\2}

/^([0-9.]+)-([0-9A-Za-z.]+)$/

Github version tag becomes image name. For example:

  • apache/fineract-cn-projectname:1.3.5-M.1
  • apache/fineract-cn-projectname:1.5.7-RC.1
  • apache/fineract-cn-projectname:1.5.7.1-RC.1
  • apache/fineract-cn-projectname:2.0.0-RELEASE
Tag name has to follow versioning scheme of fineract-cn projects (see README.md of each repo).

{\1}.{\2}.{\3}

/^([0-9]+)\.([0-9]+)\.([0-9]+)$/

Github version tag becomes image name. For example:

  • apache/fineract-cn-projectname:2.0.0"
Tag name has to follow versioning scheme of fineract-cn projects.


For autobuild to work the Dockerfile of each repository has been split into two stages: