-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdhis2_docker-compose.yml
More file actions
117 lines (109 loc) · 3.2 KB
/
dhis2_docker-compose.yml
File metadata and controls
117 lines (109 loc) · 3.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
version: "3.8"
services:
web:
#image: "${DHIS2_IMAGE:-dhis2/core-dev:latest}"
image: "${DHIS2_IMAGE:-dhis2/core:2.41.0.0}"
ports:
- "8008:8080" # DHIS2
- "8081:8081" # Debugger
- "9010:9010" # JMX port
volumes:
- ./docker/dhis.conf:/opt/dhis2/dhis.conf:ro
- ./docker/log4j2.xml:/opt/dhis2/log4j2.xml:ro
environment:
JAVA_OPTS: "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8081 \
-Dlog4j2.configurationFile=/opt/dhis2/log4j2.xml \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9010 \
-Dcom.sun.management.jmxremote.local.only=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false"
depends_on:
db:
condition: service_healthy
db:
image: ghcr.io/baosystems/postgis:13-3.4
ports:
- "5432:5432"
volumes:
- db-dump:/docker-entrypoint-initdb.d/
environment:
POSTGRES_USER: dhis
POSTGRES_DB: dhis
POSTGRES_PASSWORD: &postgres_password dhis
PGPASSWORD: *postgres_password # needed by psql in healthcheck
healthcheck:
test: [ "CMD-SHELL", "psql --no-password --quiet --username $$POSTGRES_USER postgres://127.0.0.1/$$POSTGRES_DB -p 5432 --command \"SELECT 'ok'\" > /dev/null" ]
start_period: 120s
interval: 1s
timeout: 3s
retries: 5
depends_on:
db-dump:
condition: service_completed_successfully # make sure the DB dump has been downloaded
db-dump:
image: busybox
command: sh -c '[ -f dump.sql.gz ] && echo "dump.sql.gz exists" || wget --output-document dump.sql.gz $$DHIS2_DB_DUMP_URL'
environment:
#DHIS2_DB_DUMP_URL: "${DHIS2_DB_DUMP_URL:-https://databases.dhis2.org/sierra-leone/dev/dhis2-db-sierra-leone.sql.gz}"
DHIS2_DB_DUMP_URL: "${DHIS2_DB_DUMP_URL:-https://databases.dhis2.org/sierra-leone/2.41.0/dhis2-db-sierra-leone.sql.gz}"
working_dir: /opt/dump
volumes:
- db-dump:/opt/dump
pgadmin:
image: dpage/pgadmin4:latest
ports:
- "5050:80"
environment:
PGADMIN_DEFAULT_EMAIL: admin@admin.com
PGADMIN_DEFAULT_PASSWORD: admin
depends_on:
- db
volumes:
- pgadmin_data:/var/lib/pgadmin
rstudio:
image: rocker/rstudio:latest
ports:
- "8787:8787"
environment:
USER: rstudio
PASSWORD: rstudio_password
volumes:
- ./app/rstudio:/home/rstudio
shiny:
image: rocker/shiny:latest
ports:
- "3838:3838"
environment:
USER: shiny
PASSWORD: shiny_password
volumes:
- ./app/shiny:/srv/shiny-server
windows:
image: dockurr/windows
container_name: heatplus_windows
environment:
VERSION: "win11"
RAM_SIZE: "4G"
CPU_CORES: "4"
DISK_SIZE: "64G"
#DISK2_SIZE: "32G"
USERNAME: "heatplus"
PASSWORD: "heatplus"
devices:
- /dev/kvm
cap_add:
- NET_ADMIN
ports:
- 8006:8006
- 8912:8912
- 3389:3389/tcp
- 3389:3389/udp
stop_grace_period: 2m
restart: on-failure
volumes:
#- ./MERQ:/storage2
- ./app:/shared
volumes:
db-dump: {}
pgadmin_data: {}