forked from ontoportal/ontologies_api
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
201 lines (185 loc) · 5.25 KB
/
docker-compose.yml
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
x-app: &app
image: agroportal/ontologies_api:master
environment: &env
# default bundle config resolves to /usr/local/bundle/config inside of the container
# we are setting it to local app directory if we need to use 'bundle config local'
BUNDLE_PATH: /srv/ontoportal/bundle
COVERAGE: 'true' # enable simplecov code coverage
REDIS_HOST: redis-ut
REDIS_PORT: 6379
SOLR_TERM_SEARCH_URL: http://solr-ut:8983/solr
SOLR_PROP_SEARCH_URL: http://solr-ut:8983/solr
GOO_BACKEND_NAME: 4store
GOO_PORT: 9000
GOO_HOST: 4store-ut
MGREP_HOST: mgrep-ut
MGREP_PORT: 55555
REPOSITORY_FOLDER: /srv/ontoportal/data/repository
REPORT_PATH: /srv/ontoportal/data/reports/ontologies_report.json
MGREP_DICTIONARY_FILE: /srv/ontoportal/data/mgrep
stdin_open: true
tty: true
command: /bin/bash
services:
api:
<<: *app
env_file:
.env
environment:
<<: *env
BUNDLE_APP_CONFIG: /srv/ontoportal/ontologies_api/.bundle
profiles:
- 4store
depends_on:
solr-ut:
condition: service_healthy
redis-ut:
condition: service_healthy
mgrep-ut:
condition: service_started
4store-ut:
condition: service_started
ncbo_cron:
condition: service_started
ports:
- "9393:9393"
volumes:
# bundle volume for hosting gems installed by bundle; it speeds up gem install in local development
- app_api:/srv/ontoportal/ontologies_api
- repository:/srv/ontoportal/data/repository
ncbo_cron:
<<: *app
image: agroportal/ncbo_cron:master
env_file:
.env
environment:
<<: *env
BUNDLE_APP_CONFIG: /srv/ontoportal/ncbo_cron/.bundle
command: "bundle exec bin/ncbo_cron"
profiles:
- 4store
volumes:
- app_cron:/srv/ontoportal/ncbo_cron
- repository:/srv/ontoportal/data/repository
- history:/usr/local/hist
- reports:/srv/ontoportal/data/reports
- mgrep:/srv/ontoportal/data/mgrep
- logs:/srv/ontoportal/ncbo_cron/logs
depends_on:
solr-ut:
condition: service_healthy
redis-ut:
condition: service_healthy
mgrep-ut:
condition: service_started
4store-ut:
condition: service_started
mgrep-ut:
image: ontoportal/mgrep-ncbo:0.1
ports:
- "55556:55555"
redis-ut:
image: redis
ports:
- "6379:6379"
command: [ "redis-server", "--save", "", "--appendonly", "no" ]
healthcheck:
test: redis-cli ping
interval: 10s
timeout: 3s
retries: 10
4store-ut:
image: bde2020/4store
volumes:
- 4store:/var/lib/4store
command: >
bash -c "if [ ! -d '/var/lib/4store/ontoportal_kb' ]; then 4s-backend-setup --segments 4 ontoportal_kb; fi ; 4s-backend ontoportal_kb ; 4s-httpd -D -s-1 -p 9000 ontoportal_kb"
ports:
- "9000:9000"
profiles:
- fs
- 4store
solr-ut:
image: solr:8
ports:
- 8983:8983
command: bin/solr start -cloud -f
volumes:
- solr_data:/var/solr/data
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:8983/solr/admin/info/system?wt=json" ]
interval: 30s
timeout: 10s
retries: 3
agraph-ut:
image: franzinc/agraph:v8.1.0
platform: linux/amd64
environment:
- AGRAPH_SUPER_USER=test
- AGRAPH_SUPER_PASSWORD=xyzzy
shm_size: 1g
ports:
# - 10035:10035
- 10000-10035:10000-10035
volumes:
- agdata:/agraph/data
# - ./agraph/etc:/agraph/etc
command: >
bash -c "/agraph/bin/agraph-control --config /agraph/etc/agraph.cfg start
; agtool repos create ontoportal_test --supersede
; agtool users add anonymous
; agtool users grant anonymous root:ontoportal_test:rw
; tail -f /agraph/data/agraph.log"
# healthcheck:
# test: ["CMD-SHELL", "curl -sf http://127.0.0.1:10035/repositories/ontoportal_test/status | grep -iqE '(^running|^lingering)' || exit 1"]
# start_period: 10s
# interval: 10s
# timeout: 5s
# retries: 5
profiles:
- ag
virtuoso-ut:
image: tenforce/virtuoso:virtuoso7.2.5
platform: linux/amd64
environment:
- SPARQL_UPDATE=true
ports:
- 1111:1111
- 8890:8890
profiles:
- vo
healthcheck:
test: [ "CMD-SHELL", "curl -sf http://localhost:8890/sparql || exit 1" ]
start_period: 10s
interval: 60s
timeout: 5s
retries: 3
graphdb-ut:
image: ontotext/graphdb:10.3.3
platform: linux/amd64
privileged: true
environment:
GDB_HEAP_SIZE: 5G
GDB_JAVA_OPTS: >-
-Xms5g -Xmx5g
ports:
- 7200:7200
- 7300:7300
volumes:
- ./test/data/graphdb-repo-config.ttl:/opt/graphdb/dist/configs/templates/data/graphdb-repo-config.ttl
- ./test/data/graphdb-test-load.nt:/opt/graphdb/dist/configs/templates/data/graphdb-test-load.nt
entrypoint: >
bash -c " importrdf load -f -c /opt/graphdb/dist/configs/templates/data/graphdb-repo-config.ttl -m parallel /opt/graphdb/dist/configs/templates/data/graphdb-test-load.nt ; graphdb -Ddefault.min.distinct.threshold=3000 "
profiles:
- gb
volumes:
app_api:
app_cron:
agdata:
4store:
repository:
solr_data:
reports:
mgrep:
logs:
history: