mirror of
https://github.com/DIGI-UW/HaitiHealthBox.git
synced 2026-10-26 17:35:21 +00:00
209 lines
5.7 KiB
YAML
209 lines
5.7 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
|
|
openmrs-mysql:
|
|
restart: "always"
|
|
image: mysql:5.6
|
|
# platform: linux/x86_64
|
|
container_name: emr-mysql
|
|
command: "mysqld --character-set-server=utf8 --collation-server=utf8_general_ci"
|
|
ports:
|
|
- "3306:3306"
|
|
environment:
|
|
- MYSQL_DATABASE=openmrs
|
|
- MYSQL_ROOT_PASSWORD=Admin123
|
|
- MYSQL_USER=openmrs
|
|
- MYSQL_PASSWORD=Admin123
|
|
- MYSQL_ROOT_HOST=%
|
|
healthcheck:
|
|
test: "exit 0"
|
|
volumes:
|
|
- openmrs-referenceapplication-mysql-data:/var/lib/mysql
|
|
#- ./data:/var/lib/mysql
|
|
- ./volumes/openmrs/dbdump:/docker-entrypoint-initdb.d
|
|
|
|
openmrs-server:
|
|
restart: "always"
|
|
image: openmrs/openmrs-reference-application-distro:2.11.0
|
|
container_name: emr-server
|
|
depends_on:
|
|
- openmrs-mysql
|
|
# ports:
|
|
# - "8090:8080"
|
|
environment:
|
|
DB_DATABASE: ${MYSQL_DB:-openmrs}
|
|
DB_HOST: openmrs-mysql
|
|
DB_USERNAME: ${MYSQL_USER:-openmrs}
|
|
DB_PASSWORD: ${MYSQL_PASSWORD:-Admin123}
|
|
DB_CREATE_TABLES: 'false'
|
|
DB_AUTO_UPDATE: 'false'
|
|
MODULE_WEB_ADMIN: 'true'
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:8080/openmrs/"]
|
|
timeout: 20s
|
|
volumes:
|
|
# - openmrs-referenceapplication-data:/usr/local/tomcat/.OpenMRS/
|
|
- ./volumes/openmrs/modules:/usr/local/tomcat/.OpenMRS/modules/ # do not store modules in data
|
|
- ./volumes/openmrs/owa:/usr/local/tomcat/.OpenMRS/owa/ # do not store owa in data
|
|
|
|
gateway:
|
|
image: openmrs/openmrs-reference-application-3-gateway:nightly
|
|
depends_on:
|
|
- openmrs3x-frontend
|
|
- openmrs-server
|
|
volumes:
|
|
- ./volumes/nginix/nginx.conf:/etc/nginx/nginx.conf
|
|
ports:
|
|
- "80:80"
|
|
|
|
openmrs3x-frontend:
|
|
image: openmrs/openmrs-reference-application-3-frontend:3.0.0-alpha.10
|
|
environment:
|
|
SPA_PATH: /openmrs/spa
|
|
API_URL: /openmrs
|
|
SPA_CONFIG_URLS: /openmrs/spa/config.json
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost/"]
|
|
|
|
|
|
###
|
|
# OpenHIM
|
|
###
|
|
openhim-core:
|
|
container_name: openhim-core
|
|
hostname: openhim-core
|
|
image: jembi/openhim-core:v7.1.0
|
|
restart: unless-stopped
|
|
environment:
|
|
mongo_url: "mongodb://mongo-db/openhim"
|
|
mongo_atnaUrl: "mongodb://mongo-db/openhim"
|
|
NODE_ENV: "development"
|
|
ports:
|
|
- "8085:8080"
|
|
# - "5000:5000"
|
|
- "5001:5001"
|
|
depends_on:
|
|
- mongo-db
|
|
|
|
openhim-console:
|
|
container_name: openhim-console
|
|
hostname: openhim-console
|
|
image: jembi/openhim-console:v1.15.0
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./volumes/openhim/console.json:/usr/share/nginx/html/config/default.json
|
|
healthcheck:
|
|
test: "curl -sS http://openhim-console || exit 1"
|
|
interval: 10s
|
|
timeout: 60s
|
|
retries: 3
|
|
ports:
|
|
- 3000:80
|
|
|
|
# Loads Default OpenHIM Config
|
|
openhim-config:
|
|
container_name: openhim-config
|
|
image: ghcr.io/i-tech-uw/openhim-config:v0.0.0
|
|
volumes:
|
|
- ./volumes/openhim/initial-config.json:/app/test-openhim-config.json
|
|
|
|
mongo-db:
|
|
container_name: mongo-db
|
|
image: mongo:3.4
|
|
volumes:
|
|
- /data/db
|
|
restart: unless-stopped
|
|
|
|
####
|
|
# OpenELIS
|
|
####
|
|
certs:
|
|
container_name: oe-certs
|
|
image: ghcr.io/i-tech-uw/certgen:main
|
|
restart: always
|
|
environment:
|
|
- KEYSTORE_PW="kspass"
|
|
- TRUSTSTORE_PW="tspass"
|
|
volumes:
|
|
- cert-volume:/etc/openelis-global
|
|
|
|
oe-database:
|
|
container_name: openelisglobal-database
|
|
image: postgres:14.4
|
|
ports:
|
|
- "15432:5432"
|
|
restart: always
|
|
env_file:
|
|
- ./volumes/openelis/database/database.env
|
|
volumes:
|
|
# preserves the database between containers
|
|
- db-data:/var/lib/postgresql/data
|
|
# files here will run on install
|
|
- ./volumes/openelis/database/dbInit:/docker-entrypoint-initdb.d
|
|
|
|
healthcheck:
|
|
test: ["CMD", "pg_isready", "-q", "-d", "clinlims", "-U", "clinlims"]
|
|
timeout: 45s
|
|
interval: 10s
|
|
retries: 10
|
|
|
|
oe.openelis.org:
|
|
container_name: openelisglobal-webapp
|
|
image: ghcr.io/i-tech-uw/openelis-global-2:2.7.3.2
|
|
depends_on:
|
|
- oe-database
|
|
ports:
|
|
- "8080:8080"
|
|
- "8443:8443"
|
|
restart: always
|
|
environment:
|
|
- TZ=Africa/Nairobi
|
|
# context.xml doesn't seem to be able to pick up environment variables directly, so we are passing them in as CATALINA_OPTS
|
|
- CATALINA_OPTS= -Ddatasource.url=jdbc:postgresql://oe-database:5432/clinlims -Ddatasource.username=clinlims -Ddatasource.password=clinlims
|
|
volumes:
|
|
- cert-volume:/etc/openelis-global
|
|
# - openelis-plugins-data:/var/lib/openelis-global/plugins
|
|
- ./volumes/openelis/tomcat/oe_server.xml:/usr/local/tomcat/conf/server.xml
|
|
secrets:
|
|
- source: datasource.password
|
|
- source: common.properties
|
|
|
|
|
|
fhir.openelis.org:
|
|
container_name: external-fhir-api
|
|
image: hapiproject/hapi:v5.5.1
|
|
# ports:
|
|
# - "8081:8080"
|
|
restart: always
|
|
environment:
|
|
- hapi.fhir.auto_create_placeholder_reference_targets=true
|
|
- hapi.fhir.allow_placeholder_references=true
|
|
- hapi.fhir.allow_external_references=true
|
|
|
|
|
|
fhir.openelis.org.remote:
|
|
container_name: openelis-remote-source
|
|
image: hapiproject/hapi:v5.5.1
|
|
# ports:
|
|
# - "8081:8080"
|
|
restart: always
|
|
environment:
|
|
- hapi.fhir.auto_create_placeholder_reference_targets=true
|
|
- hapi.fhir.allow_placeholder_references=true
|
|
- hapi.fhir.allow_external_references=true
|
|
|
|
|
|
secrets:
|
|
datasource.password:
|
|
file: ./volumes/openelis/properties/datasource.password
|
|
common.properties:
|
|
file: ./volumes/openelis/properties/common.properties
|
|
|
|
volumes:
|
|
db-data:
|
|
cert-volume:
|
|
openmrs-referenceapplication-mysql-data:
|
|
openmrs-referenceapplication-data:
|
|
|