blob: 2f7acafa2760f6b59500d68877107bcd93074865 [file] [log] [blame]
version: '3'
services:
provisioner-ms:
image: apache/fineract-cn-provisioner:latest
ports:
- "2020:2020"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
cassandra.cluster.pwd: ${CASSANDRA_CLUSTER_PASSWORD}
cassandra.cluster.user: ${CASSANDRA_CLUSTER_USER}
cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
custom.postgresql.host: ${POSTGRESQL_HOST}
custom.postgresql.user: ${POSTGRESQL_USER}
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.initialclientid: ${SYSTEM_INITIAL_CLIENT_ID}
system.privateKey.exponent: ${PRIVATE_KEY_EXPONENT}
system.privateKey.modulus: ${PRIVATE_KEY_MODULUS}
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
deploy:
replicas: 1
restart_policy:
condition: any
delay: 10s
max_attempts: 3
networks:
external_tools_default:
fineract:
ipv4_address: ${PROVISIONER_IP}
identity-ms:
image: apache/fineract-cn-identity:latest
ports:
- "2021:2021"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
cassandra.cluster.pwd: ${CASSANDRA_CLUSTER_PASSWORD}
cassandra.cluster.user: ${CASSANDRA_CLUSTER_USER}
cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
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}
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
deploy:
replicas: 1
restart_policy:
condition: any
delay: 10s
max_attempts: 3
networks:
external_tools_default:
fineract:
ipv4_address: ${IDENTITY_IP}
# TODO this image has error: https://issues.apache.org/jira/browse/FINCN-177
rhythm-ms:
image: apache/fineract-cn-rhythm:latest
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}
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
deploy:
replicas: 1
restart_policy:
condition: on-failure
networks:
external_tools_default:
fineract:
ipv4_address: ${RHYTHM_IP}
office-ms:
image: apache/fineract-cn-office:latest
ports:
- "2023:2023"
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}
system.privateKey.exponent: ${PRIVATE_KEY_EXPONENT}
system.privateKey.modulus: ${PRIVATE_KEY_MODULUS}
networks:
external_tools_default:
fineract:
ipv4_address: ${OFFICE_IP}
customer-ms:
image: apache/fineract-cn-customer:latest
ports:
- "2024:2024"
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:
fineract:
ipv4_address: ${CUSTOMER_IP}
accounting-ms:
ports:
- "2025:2025"
image: apache/fineract-cn-accounting:latest
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:
fineract:
ipv4_address: ${ACCOUNTING_IP}
portfolio-ms:
image: apache/fineract-cn-portfolio:latest
ports:
- "2026:2026"
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}
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
networks:
external_tools_default:
fineract:
ipv4_address: ${PORTFOLIO_IP}
deposit-account-management-ms:
image: apache/fineract-cn-deposit-account-management:latest
ports:
- "2027:2027"
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:
fineract:
ipv4_address: ${DEPOSIT_ACCOUNT_MANAGEMENT_IP}
teller-ms:
image: apache/fineract-cn-teller:latest
ports:
- "2028:2028"
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:
fineract:
ipv4_address: ${TELLER_IP}
reporting-ms:
image: apache/fineract-cn-reporting:latest
ports:
- "2029:2029"
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:
fineract:
ipv4_address: ${REPORTING_IP}
cheques-ms:
image: apache/fineract-cn-cheques:latest
ports:
- "2030:2030"
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:
fineract:
ipv4_address: ${CHEQUES_IP}
payroll-ms:
image: apache/fineract-cn-payroll:latest
ports:
- "2031:2031"
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:
fineract:
ipv4_address: ${PAYROLL_IP}
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:
fineract:
ipv4_address: ${GROUP_IP}
notifications-ms:
image: apache/fineract-cn-notifications: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:
fineract:
ipv4_address: ${NOTIFICATIONS_IP}
fims-web-app:
image: apache/fineract-cn-fims-web-app:latest
ports:
- "8888:8888"
networks:
external_tools_default:
fineract:
ipv4_address: ${FIMS_WEB_APP_IP}
networks:
external_tools_default:
external:
name: external_tools_default
fineract:
driver: bridge
ipam:
config:
- subnet: 172.16.238.0/26