-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
85 lines (79 loc) · 4.09 KB
/
Copy pathdocker-compose.yml
File metadata and controls
85 lines (79 loc) · 4.09 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
# SNIK-Toolset, Maintainer: Konrad Höffner <konrad.hoeffner@imise.uni-leipzig.de>, originally Sebastian Stäubert <sebastian.staeubert@imise.uni-leipzig.de>
services:
virtuoso:
image: pkleef/virtuoso-opensource-7
environment:
- DBA_PASSWORD=${DBA_PASSWORD}
- VIRT_DATABASE_ERRORLOGLEVEL=3
- VIRT_PARAMETERS_NUMBEROFBUFFERS=${VIRT_PARAMETERS_NUMBEROFBUFFERS}
- VIRT_PARAMETERS_MAXDIRTYBUFFERS=${VIRT_PARAMETERS_MAXDIRTYBUFFERS}
- VIRT_HTTPSERVER_SERVERPORT=8890
- VIRT_SPARQL_DEFAULTGRAPH=http://www.snik.eu/ontology
- VIRT_SPARQL_RESULTSETMAXROWS=50000
- VIRT_SPARQL_MAXQUERYCOSTESTIMATIONTIME=400
- VIRT_SPARQL_MAXQUERYEXECUTIONTIME=120
- VIRT_SPARQL_DEFAULTQUERY=select distinct * {?s a meta:Role.} LIMIT 100
- VIRT_HTTPSERVER_ENABLEDGZIPCONTENT=1
- VIRT_PLUGINS_-=-
volumes:
# Virtuoso loads each nt and ttl file from the local ontology directory separately into the appropriate graph.
- ./ontology:/database/data
- ./virtuoso:/opt/virtuoso-opensource/initdb.d:ro
profiles: ["virtuoso", "graph", "lodview"]
ports:
- "127.0.0.1:8080:8890"
- "127.0.0.1:1111:1111"
restart: unless-stopped
rickview:
image: ghcr.io/konradhoeffner/rickview:master
environment:
- RICKVIEW_KB_FILE=/ontology/
- RICKVIEW_PREFIX=sniko
- RICKVIEW_NAMESPACE=http://www.snik.eu/ontology/
- RICKVIEW_BASE=/ontology
- RICKVIEW_TITLE=SNIK
- RICKVIEW_SUBTITLE=Semantic Network of Information Management in Hospitals
- RICKVIEW_EXAMPLES=meta bb ob meta/Top meta/EntityType meta/Function meta/Role bb/ChiefExecutiveOfficer ob/ChiefInformationOfficer
- RICKVIEW_HOMEPAGE=https://www.snik.eu
- RICKVIEW_ENDPOINT=https://www.snik.eu/sparql
- RICKVIEW_GITHUB=https://github.com/snikproject/ontology
- RICKVIEW_DOC=https://snikproject.github.io/ontology/
- CARGO_INCREMENTAL=0
volumes:
- ./ontology/:/ontology/
- ./rickview.toml:/app/data/config.toml
profiles: ["rickview"]
ports:
- "127.0.0.1:8889:8080"
restart: unless-stopped
# Because SNIK graph doesn't have a backend (except the SPARQL endpoint), we currently do not use this profile on our server.
# Instead, we use the GitHub CI to deploy static HTML/JavaScript into the "static" branch, which uses https://www.snik.eu/sparql by default and check that out into /var/www/... on the server.
# Then, we use the Apache reverse proxy that the server uses anyways to publish it at https://www.snik.eu/graph/.
# We also sometimes host a development version to test new features at https://www.snik.eu/pgraph/.
# However we use the graph profile for local testing with "fresh" data from the SPARQL endpoint.
# You can also check out SNIK graph separately and test that locally using npm or its own Docker container.
# However then you are using the data from https://www.snik.eu/sparql which may be unavailable or out of date, if you develop SNIK Graph and the ontology at the same time.
# But if you want to use our Semantic Web project setup as a baseline and have different conditions or sensibilities, feel free to use this profile in production.
# Analogously, the SNIK base website from https://github.com/snikproject/www.snik.eu is also deployed into the "static branch" and https://www.snik.eu.
# The Markdown-based SNIK website is not included in the docker compose setup because it doesn't have an external dependency like the SPARQL endpoint but it could in theory be integrated here as well.
graph:
build:
context: .
dockerfile: graph/Dockerfile.submodule
args:
# client side, so we use the port on the local machine
- SPARQL_ENDPOINT=http://127.0.0.1:8080/sparql
profiles: ["graph"]
ports:
- "127.0.0.1:8043:8043"
depends_on:
- virtuoso
proxy:
image: caddy:2-alpine
profiles: ["proxy"]
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
ports:
- "127.0.0.1:80:80"
#volumes:
#virtuoso-data: # uncomment to persist the virtuoso volume but then you need to delete the volume when the ontology updates