355 lines
13 KiB
YAML
355 lines
13 KiB
YAML
version: '3.4'
|
|
|
|
x-logging:
|
|
&default-logging
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "3"
|
|
|
|
services:
|
|
identifier:
|
|
image: semtech/mu-identifier:1.9.1
|
|
environment:
|
|
DEFAULT_MU_AUTH_ALLOWED_GROUPS_HEADER: "[{\"variables\":[],\"name\":\"public\"}]"
|
|
SESSION_COOKIE_SECURE: "on"
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
dispatcher:
|
|
image: semtech/mu-dispatcher:2.1.0-beta.2
|
|
volumes:
|
|
- ./config/dispatcher:/config
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
triplestore:
|
|
image: tenforce/virtuoso:1.3.2-virtuoso7.2.5.1
|
|
environment:
|
|
SPARQL_UPDATE: "true"
|
|
DEFAULT_GRAPH: "http://mu.semte.ch/application"
|
|
volumes:
|
|
- ./data/db:/data
|
|
- ./config/db/virtuoso.ini:/data/virtuoso.ini
|
|
restart: always
|
|
logging: *default-logging
|
|
db:
|
|
image: cecemel/mu-authorization:0.6.0-beta.8
|
|
environment:
|
|
MU_SPARQL_ENDPOINT: "http://triplestore:8890/sparql"
|
|
LOG_OUTGOING_SPARQL_QUERIES: "true"
|
|
LOG_INCOMING_SPARQL_QUERIES: "true"
|
|
LOG_ACCESS_RIGHTS: "true"
|
|
LOG_OUTGOING_SPARQL_QUERY_ROUNDTRIP: "true"
|
|
ERROR_ON_UNWRITTEN_DATA: "true"
|
|
volumes:
|
|
- ./config/authorization:/config
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
migrations:
|
|
image: semtech/mu-migrations-service:0.7.0
|
|
links:
|
|
- triplestore:database
|
|
volumes:
|
|
- ./config/migrations:/data/migrations
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
resource:
|
|
image: semtech/mu-cl-resources:feature-all-errors-as-json-api-errors # Bump to fixed version when merged and release
|
|
links:
|
|
- db:database
|
|
volumes:
|
|
- ./config/resources:/config
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
cache:
|
|
image: semtech/mu-cache:2.0.1
|
|
links:
|
|
- resource:backend
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
kalliope-api:
|
|
image: lblod/jsonld-delta-service:0.5.5
|
|
volumes:
|
|
- ./config/kalliope:/config
|
|
- ./data/files:/share
|
|
links:
|
|
- db:database
|
|
environment:
|
|
SERVER_PORT: "80"
|
|
LOGGING_LEVEL: "INFO"
|
|
SPARQL_ENDPOINT: "http://db:8890/sparql"
|
|
LIMIT_SIZE: "10000"
|
|
MU_AUTH_SUDO: "false"
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
deltanotifier:
|
|
image: cecemel/delta-notifier:0.2.0-beta.2
|
|
volumes:
|
|
- ./config/delta:/config
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
sink:
|
|
image: nginx:1.15.2
|
|
volumes:
|
|
- ./config/sink/sink.conf:/etc/nginx/conf.d/default.conf
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
login:
|
|
image: lblod/acmidm-login-service:0.9.2
|
|
environment:
|
|
MU_APPLICATION_AUTH_USERID_CLAIM: "vo_id"
|
|
MU_APPLICATION_GRAPH: "http://mu.semte.ch/graphs/contacthub/accounts"
|
|
MU_APPLICATION_AUTH_ROLE_CLAIM: "abb_organisatieportaal_rol_3d"
|
|
MU_APPLICATION_AUTH_DISCOVERY_URL: "https://authenticatie-ti.vlaanderen.be/op"
|
|
MU_APPLICATION_AUTH_CLIENT_ID: "677af572-2e2f-4e61-ad38-036723bb314c"
|
|
MU_APPLICATION_AUTH_REDIRECT_URI: "https://organisaties.abb.lblod.info/authorization/callback"
|
|
MU_APPLICATION_AUTH_CLIENT_SECRET: "secret"
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
links:
|
|
- db:database
|
|
accountdetail:
|
|
image: lblod/account-detail-service:0.1.0
|
|
labels:
|
|
- "logging=true"
|
|
environment:
|
|
MU_APPLICATION_GRAPH: "http://mu.semte.ch/graphs/contacthub/accounts"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
privacy:
|
|
image: lblod/privacy-centric-service:0.4.1
|
|
labels:
|
|
- "logging=true"
|
|
environment:
|
|
SERVER_PORT: "80"
|
|
SPARQL_ENDPOINT: "http://db:8890/sparql"
|
|
LOGGING_LEVEL: "INFO"
|
|
DEFAULT_GRAPH: "http://mu.semte.ch/graphs/privacy-centric-graph"
|
|
SESSION_GRAPH: "http://mu.semte.ch/graphs/sessions"
|
|
APP_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
adressenregister:
|
|
image: lblod/adressenregister-fuzzy-search-service:0.6.0
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
frontend:
|
|
image: lblod/frontend-organization-portal:1.7.0-3
|
|
volumes:
|
|
- ./config/frontend/add-x-frame-options-header.conf:/config/add-x-frame-options.conf
|
|
environment:
|
|
EMBER_OAUTH_API_REDIRECT_URL: "https://organisaties.abb.lblod.info/authorization/callback"
|
|
EMBER_OAUTH_API_KEY: "677af572-2e2f-4e61-ad38-036723bb314c"
|
|
EMBER_OAUTH_API_BASE_URL: "https://authenticatie-ti.vlaanderen.be/op/v1/auth"
|
|
EMBER_OAUTH_API_LOGOUT_URL: "https://authenticatie-ti.vlaanderen.be/op/v1/logout"
|
|
EMBER_OAUTH_API_SCOPE: "openid vo profile abb_organisatieportaal"
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
uri-info:
|
|
image: redpencil/mu-uri-info-service:0.2.1
|
|
links:
|
|
- db:database
|
|
labels:
|
|
- "logging=true"
|
|
restart: always
|
|
logging: *default-logging
|
|
file:
|
|
image: semtech/mu-file-service:3.2.0
|
|
volumes:
|
|
- ./data/files:/share
|
|
labels:
|
|
- "logging=true"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
jobs-controller:
|
|
image: lblod/job-controller-service:0.7.0
|
|
links:
|
|
- db:database
|
|
volumes:
|
|
- ./config/jobs-controller/:/config/
|
|
################################################################################
|
|
# DELTA GENERAL
|
|
################################################################################
|
|
delta-producer-dump-file-publisher:
|
|
image: bdevloed/delta-producer-dump-file-publisher:0.5.0-beta
|
|
volumes:
|
|
- ./config/delta-producer/dump-file-publisher:/config
|
|
- ./data/files:/share
|
|
environment:
|
|
FILES_GRAPH: 'http://mu.semte.ch/graphs/public' # Note: this will be extracted in a config per job one day
|
|
DCAT_DATASET_GRAPH: 'http://mu.semte.ch/graphs/public'
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
################################################################################
|
|
# DELTA ADMINISTRATIVE-UNITS: START
|
|
################################################################################
|
|
delta-producer-bg-jobs-initiator-administrative-units:
|
|
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
|
environment:
|
|
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
DUMP_FILE_CREATION_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units'
|
|
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units'
|
|
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units'
|
|
CRON_PATTERN_DUMP_JOB: '0 0 4 * * 6' # weekly on saturday
|
|
CRON_PATTERN_HEALING_JOB: '0 0 4 * * *' # everyday at 4 AM
|
|
START_INITIAL_SYNC: 'false' # prefer to disable it now. We want to have feeling with how the DB acts.
|
|
labels:
|
|
- "logging=true"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
delta-producer-pub-graph-maintainer-administrative-units:
|
|
image: lblod/delta-producer-publication-graph-maintainer:0.7.0
|
|
environment:
|
|
MAX_BODY_SIZE: "50mb"
|
|
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
RELATIVE_FILE_PATH: "deltas/administrative-units"
|
|
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/administrative-units'
|
|
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units'
|
|
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units'
|
|
QUEUE_POLL_INTERVAL: 3000
|
|
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
|
SKIP_MU_AUTH_INITIAL_SYNC: 'true'
|
|
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
|
volumes:
|
|
- ./config/delta-producer/administrative-units:/config
|
|
- ./data/files/:/share
|
|
links:
|
|
- db:database
|
|
- triplestore:virtuoso
|
|
restart: always
|
|
logging: *default-logging
|
|
delta-producer-json-diff-publisher-administrative-units:
|
|
image: lblod/delta-producer-json-diff-file-publisher:0.2.3
|
|
environment:
|
|
MAX_BODY_SIZE: "50mb"
|
|
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
RELATIVE_FILE_PATH: "deltas/administrative-units"
|
|
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/administrative-units"
|
|
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/administrative-units'
|
|
DELTA_INTERVAL_MS: 10000
|
|
PRETTY_PRINT_DIFF_JSON: "true"
|
|
volumes:
|
|
- ./data/files:/share
|
|
labels:
|
|
- "logging=true"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
################################################################################
|
|
# DELTA ADMINISTRATIVE-UNITS: END
|
|
################################################################################
|
|
################################################################################
|
|
# DELTA ORGANIZATIONS: START
|
|
################################################################################
|
|
delta-producer-bg-jobs-initiator-organizations:
|
|
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
|
environment:
|
|
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
DUMP_FILE_CREATION_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/organizations'
|
|
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations'
|
|
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations'
|
|
CRON_PATTERN_DUMP_JOB: '42 * * * *' # At minute 42 every hour
|
|
CRON_PATTERN_HEALING_JOB: '0 0 4 * * *' # everyday at 4 AM
|
|
START_INITIAL_SYNC: 'false' # prefer to disable it now. We want to have feeling with how the DB acts.
|
|
labels:
|
|
- "logging=true"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
delta-producer-pub-graph-maintainer-organizations:
|
|
image: lblod/delta-producer-publication-graph-maintainer:0.7.0
|
|
environment:
|
|
MAX_BODY_SIZE: "50mb"
|
|
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
RELATIVE_FILE_PATH: "deltas/organizations"
|
|
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/organizations'
|
|
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations'
|
|
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations'
|
|
QUEUE_POLL_INTERVAL: 3000
|
|
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
|
SKIP_MU_AUTH_INITIAL_SYNC: 'true'
|
|
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
|
volumes:
|
|
- ./config/delta-producer/organizations:/config
|
|
- ./data/files/:/share
|
|
links:
|
|
- db:database
|
|
- triplestore:virtuoso
|
|
restart: always
|
|
logging: *default-logging
|
|
delta-producer-json-diff-publisher-organizations:
|
|
image: lblod/delta-producer-json-diff-file-publisher:0.2.3
|
|
environment:
|
|
MAX_BODY_SIZE: "50mb"
|
|
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
|
RELATIVE_FILE_PATH: "deltas/organizations"
|
|
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/organizations"
|
|
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/organizations'
|
|
DELTA_INTERVAL_MS: 10000
|
|
PRETTY_PRINT_DIFF_JSON: "true"
|
|
volumes:
|
|
- ./data/files:/share
|
|
labels:
|
|
- "logging=true"
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
logging: *default-logging
|
|
################################################################################
|
|
# DELTA ORGANIZATIONS: END
|
|
################################################################################
|
|
|
|
|
|
################################################################################
|
|
# MU SEARCH - TODO USE THE CORRECT IMAGE ONCE INHERITANCE IS IN MU SEARCH
|
|
################################################################################
|
|
search:
|
|
image: nbittich/mu-search:wip-inheritance # Bump to fixed version when merged and release to the original repo
|
|
links:
|
|
- db:database
|
|
restart: always
|
|
volumes:
|
|
- ./config/search:/config
|
|
elasticsearch:
|
|
image: semtech/mu-search-elastic-backend:1.0.1
|
|
volumes:
|
|
- ./data/elasticsearch/:/usr/share/elasticsearch/data
|
|
environment:
|
|
- discovery.type=single-node
|
|
restart: always
|