This is an automated email from the ASF dual-hosted git repository. angeh pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/fineract-cn-docker-compose.git
commit a5e833a9568d497f3c0b77e03d0038b995d65dc3 Author: Anh3h <[email protected]> AuthorDate: Thu Sep 5 21:23:12 2019 -0400 Add Fineract CN start-up script --- .gitignore | 1 + README.md | 5 +- docker-compose.yml | 73 +++++++++++++++++++++++---- external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar | Bin 65395 -> 0 bytes start-up.sh | 29 +++++++++++ 5 files changed, 96 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 4c49bd7..d028ce2 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .env +*.jar \ No newline at end of file diff --git a/README.md b/README.md index d212b5c..2c38ea2 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Fineract CN Docker-Compose scripts -This project contains Docker Compose Scripts for running Fineract CN especially in Development. +This project contains Docker Compose Scripts for running Fineract CN especially in Development. ## Requirements - Docker @@ -7,6 +7,9 @@ This project contains Docker Compose Scripts for running Fineract CN especially ## Perquisites +### Start-up Fineract CN microservices using bash script + `bash start-up.sh` + ### Generate .env file with RSA keys `java -cp external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar org.apache.fineract.cn.lang.security.RsaKeyPairFactory UNIX > .env` diff --git a/docker-compose.yml b/docker-compose.yml index 7ae1011..af2648c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -30,7 +30,8 @@ services: delay: 10s max_attempts: 3 networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.6 identity-ms: image: apache/fineract-cn-identity:0.0.1-M.1 # TODO replace with latest @@ -56,7 +57,8 @@ services: delay: 10s max_attempts: 3 networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.7 # HAS ERRORS: # rhythm-ms: @@ -76,7 +78,8 @@ services: # restart_policy: # condition: on-failure # networks: -# - external_tools_default +# external_tools_default: +# ipv4_address: 172.16.238.8 office-ms: @@ -97,7 +100,8 @@ services: system.privateKey.exponent: ${PRIVATE_KEY_EXPONENT} system.privateKey.modulus: ${PRIVATE_KEY_MODULUS} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.9 customer-ms: image: apache/fineract-cn-customer:latest @@ -115,7 +119,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.10 ledger-ms: ports: @@ -133,7 +138,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.11 portfolio-ms: image: apache/fineract-cn-portfolio:latest @@ -150,7 +156,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.12 deposit-account-management-ms: image: apache/fineract-cn-deposit-account-management:latest @@ -168,7 +175,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.13 teller-ms: image: apache/fineract-cn-teller:latest @@ -186,7 +194,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.14 reporting-ms: image: apache/fineract-cn-reporting:latest @@ -204,7 +213,8 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.15 payroll-ms: image: apache/fineract-cn-payroll:latest @@ -222,7 +232,48 @@ services: system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} networks: - - external_tools_default + external_tools_default: + ipv4_address: 172.16.238.16 + + group-ms: + image: apache/fineract-cn-group:latest + ports: + - "2032:2032" + environment: + activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL} + cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS} + eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE} + eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME} + postgresql.host: ${POSTGRESQL_HOST} + ribbon.listOfServers: ${RIBBON_EUREKA_SERVER} + spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat + system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT} + system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} + system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} + networks: + external_tools_default: + ipv4_address: 172.16.238.17 + + # Docker image is not yet available + # notification-ms: + # image: apache/fineract-cn-notification:latest + # ports: + # - "2033:2033" + # environment: + # activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL} + # cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS} + # eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE} + # eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME} + # postgresql.host: ${POSTGRESQL_HOST} + # ribbon.listOfServers: ${RIBBON_EUREKA_SERVER} + # spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat + # system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT} + # system.publicKey.modulus: ${PUBLIC_KEY_MODULUS} + # system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP} + # networks: + # external_tools_default: + # ipv4_address: 172.16.238.18 + networks: external_tools_default: diff --git a/external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar b/external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar deleted file mode 100644 index 42251a5..0000000 Binary files a/external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar and /dev/null differ diff --git a/start-up.sh b/start-up.sh new file mode 100755 index 0000000..14a2fdf --- /dev/null +++ b/start-up.sh @@ -0,0 +1,29 @@ +#!/bin/sh +set -e + +echo "Createing docker service network" +docker network create --driver=bridge --subnet=172.16.238.0/24 external_tools_default + +cd external_tools/ +docker-compose up -d +cassandra_ip=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' cassandra) +postgres_ip=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' postgres) + +# #Test Cassandra and Postgres +echo "Waiting for Cassandra and Postgres ..." +while ! nc -z "${cassandra_ip}" 9042 ; do + sleep 1 +done +while ! nc -z "${postgres_ip}" 5432 ; do + sleep 1 +done +echo "Cassandra and Postgres are up and running..." +cd .. + +echo "Starting up Fineract CN microservices..." +wget https://mifos.jfrog.io/mifos/libs-snapshot-local/org/apache/fineract/cn/lang/0.1.0-BUILD-SNAPSHOT/lang-0.1.0-BUILD-SNAPSHOT.jar +java -cp lang-0.1.0-BUILD-SNAPSHOT.jar org.apache.fineract.cn.lang.security.RsaKeyPairFactory UNIX > .env +cat env_variables >> .env + +docker-compose up -d +echo "Successfully started fineract services."
