Files
app-organization-portal/docker-compose.yml
Nordine Bittich ba802bfaf6 bump mu search
2023-06-23 08:54:02 +02:00

562 lines
22 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: semtech/mu-authorization:feature-service-roam-r1.1
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"
QUERY_MAX_PROCESSING_TIME: "300000"
QUERY_MAX_EXECUTION_TIME: "300000"
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
migrations-triggering-indexing:
image: semtech/mu-migrations-service:0.8.0
links:
- db:database
volumes:
- ./config/migrations-triggering-indexing:/data/migrations
labels:
- "logging=true"
restart: always
logging: *default-logging
resource:
image: semtech/mu-cl-resources:1.22.2
environment:
CACHE_CLEAR_PATH: "http://cache/.mu/clear-keys"
links:
- db:database
volumes:
- ./config/resources:/config
labels:
- "logging=true"
restart: always
logging: *default-logging
cache:
image: semtech/mu-cache:2.0.2
links:
- resource:backend
labels:
- "logging=true"
restart: always
logging: *default-logging
kalliope-api:
image: lblod/jsonld-delta-service:0.5.6
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: "true"
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-worship:
image: lblod/privacy-centric-service:0.6.0
labels:
- "logging=true"
environment:
DEFAULT_GRAPH: "http://mu.semte.ch/graphs/worship-privacy-centric-graph"
SESSION_GRAPH: "http://mu.semte.ch/graphs/sessions"
APP_GRAPH: "http://mu.semte.ch/graphs/public"
restart: always
logging: *default-logging
links:
- db:database
privacy-unit:
image: lblod/privacy-centric-service:0.6.0
labels:
- "logging=true"
environment:
DEFAULT_GRAPH: "http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph"
SESSION_GRAPH: "http://mu.semte.ch/graphs/sessions"
APP_GRAPH: "http://mu.semte.ch/graphs/public"
restart: always
logging: *default-logging
links:
- db:database
adressenregister:
image: lblod/adressenregister-fuzzy-search-service:0.6.3
labels:
- "logging=true"
restart: always
logging: *default-logging
frontend:
image: lblod/frontend-organization-portal:1.17.1
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/
construct-administrative-unit-relationships:
image: lblod/construct-administrative-unit-relationships-service:0.1.2
environment:
START_DATE_WORSHIP_GOVERNING_BODY: "2023-04-01T00:00:00"
END_DATE_WORSHIP_GOVERNING_BODY: "2026-03-31T00:00:00"
links:
- db:database
restart: always
logging: *default-logging
reasoner:
image: eyereasoner/reasoning-service:increased-stack-limit
volumes:
- ./config/reasoner:/config
################################################################################
# DELTA GENERAL
################################################################################
delta-producer-dump-file-publisher:
image: lblod/delta-producer-dump-file-publisher:0.9.1
volumes:
- ./config/delta-producer/dump-file-publisher:/config
- ./data/files:/share
links:
- db:database
restart: always
logging: *default-logging
################################################################################
# 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/jobs"
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.15.4
environment:
MAX_BODY_SIZE: "50mb"
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
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
SERVE_DELTA_FILES: "true"
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/organizations"
DELTA_INTERVAL_MS: 10000
PRETTY_PRINT_DIFF_JSON: "true"
ERROR_GRAPH: "http://mu.semte.ch/graphs/jobs"
volumes:
- ./config/delta-producer/organizations:/config
- ./data/files/:/share
links:
- db:database
- triplestore:virtuoso
restart: always
logging: *default-logging
################################################################################
# DELTA ORGANIZATIONS: END
################################################################################
################################################################################
# DELTA PUBLIC INFORMATION: START
################################################################################
delta-producer-bg-jobs-initiator-public:
image: lblod/delta-producer-background-jobs-initiator:0.3.1
environment:
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/public"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public"
CRON_PATTERN_DUMP_JOB: "11 */4 * * *" # At minute 11 every 4 hours
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-public:
image: lblod/delta-producer-publication-graph-maintainer:0.15.4
environment:
MAX_BODY_SIZE: "50mb"
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
RELATIVE_FILE_PATH: "deltas/public"
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/public"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public"
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
SERVE_DELTA_FILES: "true"
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/public"
DELTA_INTERVAL_MS: 10000
PRETTY_PRINT_DIFF_JSON: "true"
ERROR_GRAPH: "http://mu.semte.ch/graphs/jobs"
volumes:
- ./config/delta-producer/public:/config
- ./data/files/:/share
links:
- db:database
- triplestore:virtuoso
restart: always
logging: *default-logging
################################################################################
# DELTA PUBLIC INFORMATION: END
################################################################################
################################################################################
# DELTA WORSHIP POSTS: START
################################################################################
delta-producer-bg-jobs-initiator-worship-posts:
image: lblod/delta-producer-background-jobs-initiator:0.3.1
environment:
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
CRON_PATTERN_DUMP_JOB: "17 */4 * * *" # At minute 17 every 4 hours
CRON_PATTERN_HEALING_JOB: "0 0 3 * * *" # everyday at 3 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-worship-posts:
image: lblod/delta-producer-publication-graph-maintainer:0.15.4
environment:
MAX_BODY_SIZE: "50mb"
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
RELATIVE_FILE_PATH: "deltas/worship-posts"
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/worship-posts"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
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
SERVE_DELTA_FILES: "true"
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/worship-posts"
DELTA_INTERVAL_MS: 10000
PRETTY_PRINT_DIFF_JSON: "true"
ERROR_GRAPH: "http://mu.semte.ch/graphs/jobs"
volumes:
- ./config/delta-producer/worship-posts:/config
- ./data/files/:/share
links:
- db:database
- triplestore:virtuoso
restart: always
logging: *default-logging
################################################################################
# DELTA WORSHIP POSTS: END
################################################################################
################################################################################
# DELTA CONSUMERS
################################################################################
################################################################################
# LOKET MANDATARISSEN CONSUMERS
################################################################################
mandatarissen-consumer:
image: lblod/delta-consumer:0.0.17-rc.7
environment:
DCR_SERVICE_NAME: "mandatarissen-consumer"
DCR_SYNC_BASE_URL: "https://loket.lblod.info" # replace with link to Loket API
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/MandatarissenCacheGraphDump"
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/initialSync/mandatarissen"
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/deltaSync/mandatarissen"
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/mandatarissen-consumer"
DCR_DISABLE_INITIAL_SYNC: "true"
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
BATCH_SIZE: 1000
DCR_SYNC_FILES_PATH: "/sync/mandatarissen/files"
DCR_KEEP_DELTA_FILES: "true"
DCR_ENABLE_DELTA_CONTEXT: "true"
DCR_LANDING_ZONE_DATABASE: "triplestore"
DCR_LANDING_ZONE_GRAPH: "http://mu.semte.ch/graphs/landing-zone/mandatarissen"
volumes:
- ./config/loket-consumer/mandatarissen-dispatching:/config/triples-dispatching/custom-dispatching
- ./data/files/consumer-files/mandatarissen:/consumer-files/
restart: always
labels:
- "logging=true"
links:
- db:database
- triplestore:virtuoso
logging: *default-logging
################################################################################
# LOKET LEIDINGGEVENDEN CONSUMERS
################################################################################
leidinggevenden-consumer:
image: lblod/delta-consumer:0.0.17-rc.7
environment:
DCR_SERVICE_NAME: "leidinggevenden-consumer"
DCR_SYNC_BASE_URL: "https://loket.lblod.info" # replace with link to Loket API
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/LeidinggevendenCacheGraphDump"
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/initialSync/leidinggevenden"
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/deltaSync/leidinggevenden"
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/leidinggevenden-consumer"
DCR_DISABLE_INITIAL_SYNC: "true"
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
DCR_SYNC_FILES_PATH: "/sync/leidinggevenden/files"
DCR_KEEP_DELTA_FILES: "true"
BATCH_SIZE: 1000
DCR_ENABLE_DELTA_CONTEXT: "true"
DCR_LANDING_ZONE_DATABASE: "triplestore"
DCR_LANDING_ZONE_GRAPH: "http://mu.semte.ch/graphs/landing-zone/leidinggevenden"
volumes:
- ./config/loket-consumer/leidinggevenden-dispatching:/config/triples-dispatching/custom-dispatching
- ./data/files/consumer-files/leidinggevenden:/consumer-files/
restart: always
labels:
- "logging=true"
links:
- db:database
- triplestore:virtuoso
logging: *default-logging
################################################################################
# LOKET WORSHIP SENSITIVE CONSUMERS
################################################################################
worship-services-sensitive-consumer:
image: lblod/delta-consumer:0.0.17-rc.7
environment:
DCR_SYNC_BASE_URL: "https://loket.lblod.info/"
DCR_SERVICE_NAME: "worship-services-sensitive-consumer"
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/WorshipServicesSensitiveCacheGraphDump"
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/wsSensitive"
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/wsSensitiveDeltaFileSyncing"
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/worship-services-sensitive-consumer"
DCR_DISABLE_INITIAL_SYNC: "true"
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
DCR_SYNC_FILES_PATH: "/sync/worship-services-sensitive/files"
BATCH_SIZE: 1000
DCR_KEEP_DELTA_FILES: "true"
DCR_ENABLE_DELTA_CONTEXT: "true"
DCR_LANDING_ZONE_DATABASE: "triplestore"
DCR_LANDING_ZONE_GRAPH: "http://mu.semte.ch/graphs/landing-zone/worship-services-sensitive"
volumes:
- ./config/loket-consumer/worship-services-sensitive-dispatching:/config/triples-dispatching/custom-dispatching
- ./data/files/consumer-files/worship-services-sensitive:/consumer-files/
restart: always
labels:
- "logging=true"
links:
- db:database
- triplestore:virtuoso
logging: *default-logging
################################################################################
# DELTA CONSUMERS: END
################################################################################
################################################################################
# LDES PRODUCERS
################################################################################
ldes-delta-pusher:
image: redpencil/ldes-delta-pusher:latest
profiles: ["dev"] # Disable ldes feed by default until ready for qa/prod
environment:
LDES_ENDPOINT: 'http://ldes-backend/organizations'
volumes:
- ./config/ldes-delta-pusher/:/config/
links:
- db:database
ldes-backend:
image: redpencil/fragmentation-producer:0.3.2
profiles: ["dev"] # Disable ldes feed by default until ready for qa/prod
environment:
FOLDER_DEPTH: 1
PAGE_RESOURCES_COUNT: 50
LDES_STREAM_PREFIX: 'http://data.lblod.info/streams/op/'
TIME_TREE_RELATION_PATH: 'http://www.w3.org/ns/prov#generatedAtTime'
CACHE_SIZE: 10
DATA_FOLDER: '/data'
ENABLE_AUTH: 'false'
restart: always
volumes:
- './data/ldes-feed/:/data/'
################################################################################
# MU SEARCH
################################################################################
search:
image: semtech/mu-search:0.9.0-beta.7
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
error-report-service:
image: lblod/error-report-service:0.1.0
links:
- db:database
roles:
image: lblod/select-role-service:0.1.0
labels:
- "logging=true"
links:
- db:database
restart: always
logging: *default-logging
###################################################################################
# MU SCRIPTS
# #################################################################################
project-scripts:
image: semtech/mu-scripts:1.0.0
volumes:
- ./scripts/project:/app/scripts/
restart: "no"