Files
app-organization-portal/docker-compose.yml
mirdono 44cbb222cc chore: enable editing contact data
Re-enable editing contact data in OP as the CLB app editing functionality was
disable due to data flow issues. This sets the relevant frontend feature flag
such that it allows editing the contact data for all organizations
classifications agains.

When deploying make sure this environment variable is **not** overwritten in the
environment's `docker-compose.override.yml`.
2024-10-16 09:55:59 +02:00

582 lines
20 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.10.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
db-cleanup:
image: lblod/db-cleanup-service:0.5.1
environment:
MU_SPARQL_ENDPOINT: "http://db:8890/sparql"
CRON_PATTERN: "23 */6 * * *"
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.24.0
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:2.0.0
environment:
LOG_SPARQL_ALL: "false"
SECURITY_CONFIG_PATH: "/config/security.json"
DUMP_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/OrganizationsCacheGraphDump"
volumes:
- ./config/kalliope:/config
- ./data/files:/share
links:
- db:database
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.1
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.1
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.8.0
labels:
- "logging=true"
restart: always
logging: *default-logging
frontend:
image: lblod/frontend-organization-portal:1.27.0
volumes:
- ./config/frontend/add-x-frame-options-header.conf:/config/add-x-frame-options.conf
environment:
EMBER_ENABLE_EDIT_CONTACT_DATA_FEATURE: "true"
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
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
jobs-controller:
image: lblod/job-controller-service:0.7.0
links:
- db:database
volumes:
- ./config/jobs-controller/:/config/
labels:
- "logging=true"
restart: always
logging: *default-logging
organizations-sync-with-sharepoint-jobs-initiator:
image: lblod/delta-producer-background-jobs-initiator:0.4.3
environment:
JOBS_GRAPH: "http://mu.semte.ch/graphs/jobs"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/sp-sync/initialSyncing/organizations"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/sp-sync/healingOperation/organizations"
INITIAL_PUBLICATION_GRAPH_SYNC_TASK_OPERATION: "http://redpencil.data.gift/id/jobs/concept/TaskOperation/sp-sync/initialSyncing"
HEALING_TASK_OPERATION: "http://redpencil.data.gift/id/jobs/concept/TaskOperation/sp-sync/healing"
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.
ENABLE_DUMP_FILE_CREATION: "false"
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
organizations-sync-with-sharepoint:
image: lblod/op-sync-with-sharepoint-service:0.1.2
environment:
INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/sp-sync/initialSyncing/organizations"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/sp-sync/healingOperation/organizations"
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true"
USERNAME: 'username-to-override'
PASSWORD: 'password-to-override'
SITE: 'site-to-override'
LIST: 'list-to-override'
links:
- db:database
volumes:
- ./config/sharepoint/sync/organizations/:/config/
labels:
- "logging=true"
restart: always
logging: *default-logging
construct-organization-relationships:
image: lblod/construct-organization-relationships-service:1.0.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
labels:
- "logging=true"
restart: always
logging: *default-logging
reasoner:
image: eyereasoner/reasoning-service:1.0.4
volumes:
- ./config/reasoner:/config
labels:
- "logging=true"
restart: always
logging: *default-logging
report-generation:
image: lblod/loket-report-generation-service:0.7.0
environment:
DEFAULT_GRAPH: "http://mu.semte.ch/graphs/shared"
ONLY_KEEP_LATEST_REPORT: "true"
links:
- db:database
volumes:
- ./data/files:/share
- ./config/reports:/config
labels:
- "logging=true"
restart: always
logging: *default-logging
download-exports:
image: lblod/download-exports-service:0.1.0
links:
- db:database
volumes:
- ./data/files:/share
labels:
- "logging=true"
restart: always
logging: *default-logging
kbo-data-sync:
image: lblod/sync-wegwijs-organization-service:2.0.2
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
################################################################################
# DELTA GENERAL
################################################################################
publication-triplestore:
image: redpencil/virtuoso:1.2.0-rc.1
environment:
SPARQL_UPDATE: "true"
DEFAULT_GRAPH: "http://mu.semte.ch/application"
volumes:
- ./data/publication-triplestore:/data
- ./config/publication-triplestore/virtuoso.ini:/data/virtuoso.ini
labels:
- "logging=true"
restart: always
logging: *default-logging
delta-producer-dump-file-publisher:
image: lblod/delta-producer-dump-file-publisher:0.10.2
volumes:
- ./config/delta-producer/dump-file-publisher:/config
- ./data/files:/share
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
delta-producer-background-jobs-initiator:
image: lblod/delta-producer-background-jobs-initiator:1.0.1
volumes:
- ./config/delta-producer/background-job-initiator:/config
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
delta-producer-publication-graph-maintainer:
image: lblod/delta-producer-publication-graph-maintainer:1.2.2
environment:
MAX_BODY_SIZE: "50mb"
PRETTY_PRINT_DIFF_JSON: "true"
PUBLICATION_VIRTUOSO_ENDPOINT: "http://publication-triplestore:8890/sparql"
PUBLICATION_MU_AUTH_ENDPOINT: "http://publication-triplestore:8890/sparql"
SUDO_QUERY_RETRY_FOR_HTTP_STATUS_CODES: "404,500,503"
CONFIG_SERVICES_JSON_PATH: '/config/publication-graph-maintainer/config.json'
volumes:
- ./config/delta-producer:/config
- ./data/files/:/share
links:
- db:database
- triplestore:virtuoso
labels:
- "logging=true"
restart: always
logging: *default-logging
################################################################################
# DELTA CONSUMERS
################################################################################
################################################################################
# LOKET MANDATARISSEN CONSUMERS
################################################################################
mandatarissen-consumer:
image: lblod/delta-consumer:0.0.24
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.24
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.24
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: 50
SLEEP_BETWEEN_BATCHES: 10
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
################################################################################
# CLB CONSUMERS
################################################################################
clb-contact-data-consumer:
image: lblod/delta-consumer:0.0.18
environment:
DCR_SYNC_BASE_URL: "https://dev.contactgegevens-loket.lblod.info/"
DCR_SERVICE_NAME: "clb-contact-data-consumer"
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/ContactGegevensCacheGraphDump"
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/contactData"
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/contactDataDeltaFileSyncing"
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/clb-contact-data-consumer"
DCR_DISABLE_INITIAL_SYNC: "false"
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
DCR_SYNC_FILES_PATH: "/sync/contact-data/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/clb-contact-data"
volumes:
- ./config/clb-consumer/contact-data:/config/triples-dispatching/custom-dispatching
- ./data/files/consumer-files/clb-contact-data:/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
restart: always
ldes-backend:
image: redpencil/fragmentation-producer:0.4.0
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.10.0-beta.5
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
labels:
- "logging=true"
restart: always
logging: *default-logging
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"