dnet-docker/docker-compose.dev.yml

351 lines
9.4 KiB
YAML
Raw Permalink Normal View History

2023-10-03 09:51:41 +02:00
version: "3"
services:
2023-11-15 14:56:36 +01:00
is-manager:
build: ./dnet-app/apps/dnet-is-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
- frontend
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-12-07 14:45:28 +01:00
- LOGGING_LEVEL_EU_DNETLIB=INFO
2023-11-15 14:56:36 +01:00
profiles:
- base
2023-10-03 09:51:41 +02:00
context-manager:
build: ./dnet-app/apps/dnet-context-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
- db-main
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_CONTEXTS_DB}
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-10-24 12:08:45 +02:00
profiles:
- contexts
2023-10-03 09:51:41 +02:00
vocabulary-manager:
build: ./dnet-app/apps/dnet-vocabulary-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
- db-main
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_VOCS_DB}
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-10-24 12:08:45 +02:00
profiles:
- vocs
2023-10-03 09:51:41 +02:00
dsm:
build: ./dnet-app/apps/dnet-datasource-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_DSM_DB}
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-10-24 12:08:45 +02:00
profiles:
- dsm
2023-10-11 15:00:25 +02:00
index-manager:
build: ./dnet-app/apps/dnet-index-manager
2023-10-03 09:51:41 +02:00
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-11-09 14:53:58 +01:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_INDEX_DB}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-11-10 10:18:10 +01:00
- SOLR_URLS=http://solr-1:${SOLR_PORT}/solr
- ZOOKEEPER_SERVER=zoo-1
2023-10-24 12:08:45 +02:00
profiles:
- index
2023-10-03 09:51:41 +02:00
mdsm:
build: ./dnet-app/apps/dnet-mdstore-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-10-24 12:08:45 +02:00
- db-mdstores-data
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-12-11 14:30:05 +01:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_MDSTORES_DB}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-12-12 12:27:40 +01:00
- MDSTORES_DATA_DATASOURCE_URL=jdbc:postgresql://db-mdstores-data:${PG_PORT}/${PG_MDSTORES_DATA_DB}
2023-10-24 12:08:45 +02:00
- MDSTORES_DATA_DATASOURCE_USERNAME=${PG_USER}
- MDSTORES_DATA_DATASOURCE_PASSWORD=${PG_PASSWORD}
profiles:
- mdstores
2023-10-03 09:51:41 +02:00
2023-10-11 15:00:25 +02:00
oai-manager:
build: ./dnet-app/apps/dnet-oai-manager
2023-10-03 09:51:41 +02:00
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
2023-11-09 14:53:58 +01:00
- db-oai
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-11-09 14:53:58 +01:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-oai:${PG_PORT}/${PG_OAI_DB}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-10-24 12:08:45 +02:00
profiles:
- oai
2023-10-03 09:51:41 +02:00
resource-manager:
build: ./dnet-app/apps/dnet-resource-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2024-01-04 12:31:47 +01:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_RESOURCES_DB}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-10-24 12:08:45 +02:00
profiles:
- base
2023-10-03 09:51:41 +02:00
2023-10-11 09:52:41 +02:00
wf-aggregation-postgres:
build: ./dnet-app/apps/dnet-wf-aggregation-postgres
2023-10-03 09:51:41 +02:00
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-10-24 12:08:45 +02:00
- db-mdstores-data
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-12-04 14:49:49 +01:00
- LOGGING_LEVEL_EU_DNETLIB=DEBUG
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_WFS_DB}
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-12-12 12:27:40 +01:00
- MDSTORES_DATA_DATASOURCE_URL=jdbc:postgresql://db-mdstores-data:${PG_PORT}/${PG_MDSTORES_DATA_DB}
2023-10-24 12:08:45 +02:00
- MDSTORES_DATA_DATASOURCE_USERNAME=${PG_USER}
- MDSTORES_DATA_DATASOURCE_PASSWORD=${PG_PASSWORD}
2023-11-10 10:36:20 +01:00
- SOLR_URLS=http://solr-1:${SOLR_PORT}/solr
- ZOOKEEPER_SERVER=zoo-1
- OAI_DATABASE_URL=jdbc:postgresql://db-oai:${PG_PORT}/${PG_OAI_DB}
- OAI_DATABASE_USERNAME=${PG_USER}
- OAI_DATABASE_PASSWORD=${PG_PASSWORD}
2024-01-18 12:06:09 +01:00
volumes:
- /Users/michele/Develop/istiOpenPortal/puma_import/data:/var/lib/dnet/puma_import
2023-10-24 12:08:45 +02:00
profiles:
- wfs
2023-10-03 09:51:41 +02:00
wf-manager:
build: ./dnet-app/apps/dnet-wf-manager
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
depends_on:
- db-main
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
- SPRING_DATASOURCE_URL=jdbc:postgresql://db-main:${PG_PORT}/${PG_WFS_DB}
- SPRING_DATASOURCE_USERNAME=${PG_USER}
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
2024-01-05 11:32:51 +01:00
- LOGGING_LEVEL_EU_DNETLIB=DEBUG
2023-10-24 12:08:45 +02:00
profiles:
- wfs
2023-10-03 09:51:41 +02:00
mail-sender:
build: ./dnet-app/apps/dnet-email-sender
expose:
- ${SPRING_BOOT_PORT}
networks:
- backend
2023-11-15 14:56:36 +01:00
depends_on:
- is-manager
environment:
2023-11-20 16:16:50 +01:00
- DNET_IS_URL=http://is-manager:${SPRING_BOOT_PORT}
2023-10-24 12:08:45 +02:00
profiles:
- mail
2023-10-03 09:51:41 +02:00
db-main:
image: postgres:15.4
restart: always
expose:
- ${PG_PORT}
networks:
- backend
environment:
POSTGRES_USER: ${PG_USER}
POSTGRES_PASSWORD: ${PG_PASSWORD}
2024-01-04 12:31:47 +01:00
POSTGRES_DB: ${PG_RESOURCES_DB}
2023-10-03 09:51:41 +02:00
POSTGRES_DB_DSM: ${PG_DSM_DB}
POSTGRES_DB_WFS: ${PG_WFS_DB}
POSTGRES_DB_VOCS: ${PG_VOCS_DB}
POSTGRES_DB_CONTEXTS: ${PG_CONTEXTS_DB}
POSTGRES_DB_MDSTORES: ${PG_MDSTORES_DB}
2023-11-09 14:53:58 +01:00
POSTGRES_DB_INDEX: ${PG_INDEX_DB}
2023-10-03 09:51:41 +02:00
volumes:
- pg_main_data:/var/lib/postgresql/data
2023-10-24 12:08:45 +02:00
- ./data/sql/resources.sql:/docker-entrypoint-initdb.d/init_01_resources.sql
- ./data/sql/dsm.sql:/docker-entrypoint-initdb.d/init_02_dsm.sql
- ./data/sql/wfs.sql:/docker-entrypoint-initdb.d/init_03_wfs.sql
- ./data/sql/vocabularies.sql:/docker-entrypoint-initdb.d/init_04_vocabularies.sql
- ./data/sql/contexts.sql:/docker-entrypoint-initdb.d/init_05_contexts.sql
- ./data/sql/mdstores.sql:/docker-entrypoint-initdb.d/init_06_mdstores.sql
2023-11-09 14:53:58 +01:00
- ./data/sql/index_configs.sql:/docker-entrypoint-initdb.d/init_07_index_configs.sql
- ./data/sql/instances/openportals.sql:/docker-entrypoint-initdb.d/init_99_openportals.sql
2023-10-24 12:08:45 +02:00
profiles:
- base
2023-11-09 14:53:58 +01:00
db-oai:
image: postgres:15.4
restart: always
expose:
- ${PG_PORT}
networks:
- backend
environment:
POSTGRES_DB: ${PG_OAI_DB}
POSTGRES_USER: ${PG_USER}
POSTGRES_PASSWORD: ${PG_PASSWORD}
volumes:
- ./data/sql/oai.sql:/docker-entrypoint-initdb.d/init.sql
- pg_oai_data:/var/lib/postgresql/data
profiles:
- oai
- wfs
2023-10-24 12:08:45 +02:00
db-mdstores-data:
2023-10-03 09:51:41 +02:00
image: postgres:15.4
restart: always
expose:
- ${PG_PORT}
networks:
- backend
environment:
2023-10-24 12:08:45 +02:00
POSTGRES_DB: ${PG_MDSTORES_DATA_DB}
2023-10-03 09:51:41 +02:00
POSTGRES_USER: ${PG_USER}
POSTGRES_PASSWORD: ${PG_PASSWORD}
volumes:
2023-10-20 15:51:46 +02:00
- ./data/sql/mdstores_data.sql:/docker-entrypoint-initdb.d/init.sql
2023-10-24 12:08:45 +02:00
- pg_mdstores_data:/var/lib/postgresql/data
profiles:
- mdstores
- wfs
2023-11-09 14:53:58 +01:00
2023-10-31 12:28:25 +01:00
solr-1:
image: solr:9.4.0
2023-10-31 12:28:25 +01:00
container_name: solr-1
2023-10-30 16:00:10 +01:00
ports:
- ${SOLR_PORT}:${SOLR_PORT}
2023-10-03 09:51:41 +02:00
expose:
- ${SOLR_PORT}
2023-10-31 12:28:25 +01:00
environment:
- ZK_HOST=zoo-1:2181
- SOLR_HOST=localhost # For DEV only, it permits unit tests
2023-10-03 09:51:41 +02:00
networks:
2023-10-31 12:28:25 +01:00
- solr
2023-10-30 16:00:10 +01:00
- frontend
2023-10-31 12:28:25 +01:00
depends_on:
- zoo-1
2023-10-24 12:08:45 +02:00
profiles:
- index
2023-10-03 09:51:41 +02:00
2023-10-31 12:28:25 +01:00
zoo-1:
image: zookeeper:3.7.2
container_name: zoo-1
restart: always
hostname: zoo-1
volumes:
- zoo1data:/data
ports:
- 2181:2181
- 7001:7000
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo-1:2888:3888;2181
2023-10-31 16:00:53 +01:00
ZOO_4LW_COMMANDS_WHITELIST: mntr, conf, ruok
ZOO_CFG_EXTRA: "metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider metricsProvider.httpPort=7000 metricsProvider.exportJvmInfo=true"
2023-10-31 12:28:25 +01:00
networks:
- solr
- frontend
2023-11-21 08:39:02 +01:00
profiles:
- index
2023-10-31 12:28:25 +01:00
2023-10-03 09:51:41 +02:00
angular-dev:
build:
context: ./dnet-app/frontends/is
dockerfile: dockerfile.dev
ports:
2023-10-03 11:26:23 +02:00
- 4200
networks:
- backend
2023-10-03 09:51:41 +02:00
volumes:
- /app/node_modules
2023-10-03 11:26:23 +02:00
- ./dnet-app/frontends/is:/app
2023-10-24 12:08:45 +02:00
profiles:
- ui
2023-10-03 09:51:41 +02:00
web-dev:
image: nginx
volumes:
2023-10-03 11:26:23 +02:00
- ./data/nginx-templates/development.conf.template:/etc/nginx/templates/default.conf.template
2023-10-03 09:51:41 +02:00
ports:
- ${PUBLIC_PORT}:${PUBLIC_PORT}
2023-10-04 11:34:06 +02:00
- ${PUBLIC_API_PORT}:${PUBLIC_API_PORT}
2023-10-03 09:51:41 +02:00
networks:
- frontend
- backend
environment:
- NGINX_PORT=${PUBLIC_PORT}
2023-10-04 11:34:06 +02:00
- API_PORT=${PUBLIC_API_PORT}
- SPRING_BOOT_PORT=${SPRING_BOOT_PORT}
2023-10-03 09:51:41 +02:00
depends_on:
2023-11-15 14:56:36 +01:00
- is-manager
2023-10-03 09:51:41 +02:00
- angular-dev
2023-10-24 12:08:45 +02:00
profiles:
- ui
2023-10-03 09:51:41 +02:00
networks:
2023-10-31 12:28:25 +01:00
solr:
2023-10-03 09:51:41 +02:00
backend:
frontend:
volumes:
solrdata:
pg_main_data:
2023-10-24 12:08:45 +02:00
pg_mdstores_data:
2023-11-09 14:53:58 +01:00
pg_oai_data:
2023-10-31 12:28:25 +01:00
zoo1data: