From 0cc73499cd1cc54344ce43e2bc26e2f3695b0bbb Mon Sep 17 00:00:00 2001 From: Thomas BOUSSELIN Date: Fri, 24 Oct 2025 16:57:55 +0200 Subject: [PATCH 1/5] feat: support multiple hosts and different public port --- mvm/.env.example | 13 ++++++++----- mvm/connector.yaml | 14 +++++++------- mvm/offering-manager.yaml | 4 ++-- 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/mvm/.env.example b/mvm/.env.example index d1e2e6f..04b3c30 100644 --- a/mvm/.env.example +++ b/mvm/.env.example @@ -36,7 +36,6 @@ export VERIFIER_HOST_PORT=1235 ## GENERIC CONFIG export SED_PARTICIPANT_ID="example_participant1" -export SED_PUBLIC_HOSTNAME="connector1.example.com" export SED_TRUSTED_ISSUER_ID="did:iota:lnk:0x2ab8359cab2468ba2f4217703503a9bde86c4cf85ee57eb6093ed5c2072c87a7" ## OFFERING MANAGER CONFIG @@ -44,7 +43,9 @@ export OM_PERSISTENCE_DATABASE="offeringManager" export OM_PERSISTENCE_USER="offeringManager" export OM_PERSISTENCE_PASSWORD="change_this_password" export OM_HASH_ALGORITHM="SHA-256" +export OFFERING_MANAGER_HOSTNAME="offering-manager.example.com" export OFFERING_MANAGER_EXTERNAL_API_PORT=8080 +export OFFERING_MANAGER_PUBLIC_API_PORT=8080 ## CONNECTOR CONFIG ## CONNECTOR PERSISTENCE CONFIGURATION PARAMETERS @@ -54,8 +55,9 @@ export CONN_PERSISTENCE_PASSWORD="secretPassword4Connector" ## CONNECTOR CONTROL PLANE SPECIFIC CONFIGURATION PARAMETERS # Data Space Protocol API (publicly exposed) -export CONN_WEB_HTTP_PROTOCOL_PORT=8282 -export CONN_WEB_HTTP_PROTOCOL_PATH="/api/dsp" +export CONN_CONTROL_PLANE_HOSTNAME="connector1.example.com" +export CONN_CONTROL_PLANE_PORT=8282 +export CONN_CONTROL_PLANE_PATH="/api/dsp" # Management API (shouldn't be publicly exposed) export CONN_WEB_HTTP_MANAGEMENT_PORT=8181 export CONN_WEB_HTTP_MANAGEMENT_PATH="/api/management/" @@ -76,8 +78,9 @@ export CONN_CP_PUBLIC_DSP_PORT=8282 # The public port that other participants ne ## CONNECTOR DATA PLANE SPECIFIC CONFIGURATION PARAMETERS # Data Plane Public API v2 (publicly exposed) -export CONN_WEB_HTTP_PUBLIC_PORT=8185 -export CONN_WEB_HTTP_PUBLIC_PATH="/api/public" +export CONN_DATA_PLANE_HOSTNAME="connector1.example.com" +export CONN_DATA_PLANE_PUBLIC_PORT=8185 +export CONN_DATA_PLANE_PUBLIC_PATH="/api/public" # Externally exposed ports export CONN_DP_EXTERNAL_API_PORT=8185 export CONN_DP_EXTERNAL_CONTROL_PORT=9192 diff --git a/mvm/connector.yaml b/mvm/connector.yaml index 69a5742..06bb0de 100644 --- a/mvm/connector.yaml +++ b/mvm/connector.yaml @@ -15,14 +15,14 @@ services: - "${CONN_CP_EXTERNAL_DSP_PORT:-8282}:8282" # Data Space Protocol API, has to be publicly accessible environment: LOG_LEVEL: info - EDC_HOSTNAME: ${SED_PUBLIC_HOSTNAME} + EDC_HOSTNAME: ${CONN_CONTROL_PLANE_HOSTNAME} EDC_PARTICIPANT_ID: ${SED_PARTICIPANT_ID} EDC_DATASOURCE_DEFAULT_URL: jdbc:postgresql://connector-postgres:5432/${CONN_PERSISTENCE_DATABASE} EDC_DATASOURCE_DEFAULT_USER: ${CONN_PERSISTENCE_USER} EDC_DATASOURCE_DEFAULT_PASSWORD: ${CONN_PERSISTENCE_PASSWORD} EDC_SQL_SCHEMA_AUTOCREATE: true - WEB_HTTP_PROTOCOL_PORT: ${CONN_WEB_HTTP_PROTOCOL_PORT:-8282} - WEB_HTTP_PROTOCOL_PATH: ${CONN_WEB_HTTP_PROTOCOL_PATH:-/api/dsp} + WEB_HTTP_PROTOCOL_PORT: ${CONN_CONTROL_PLANE_PORT:-8282} + WEB_HTTP_PROTOCOL_PATH: ${CONN_CONTROL_PLANE_PATH:-/api/dsp} WEB_HTTP_MANAGEMENT_PORT: ${CONN_WEB_HTTP_MANAGEMENT_PORT:-8181} WEB_HTTP_MANAGEMENT_PATH: ${CONN_WEB_HTTP_MANAGEMENT_PATH:-/api/dsp} WEB_HTTP_VERSION_PORT: ${CONN_WEB_HTTP_VERSION_PORT:-7171} @@ -32,7 +32,7 @@ services: WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} WEB_HTTP_PATH: ${CONN_WEB_HTTP_PATH:-/api} EDC_CONTROL_ENDPOINT: http://connector-dataplane:${CONN_WEB_HTTP_CONTROL_PORT}${CONN_WEB_HTTP_CONTROL_PATH} - EDC_DSP_CALLBACK_ADDRESS: http://${SED_PUBLIC_HOSTNAME}:${CONN_CP_PUBLIC_DSP_PORT}${CONN_WEB_HTTP_PROTOCOL_PATH} + EDC_DSP_CALLBACK_ADDRESS: http://${OFFERING_MANAGER_HOSTNAME}:${CONN_CP_PUBLIC_DSP_PORT}${CONN_CONTROL_PLANE_PATH} EDC_HTTP_CLIENT_HTTPS_ENFORCE: ${CONN_HTTPS_ENFORCE} SED_DLT_BOOTH_BASE_URL: "http://dlt-booth:${DLT_HOST_PORT}" SED_VERIFIER_BASE_URL: "http://verifier:${VERIFIER_HOST_PORT}" @@ -70,9 +70,9 @@ services: EDC_DATASOURCE_DEFAULT_HOST: connector-postgres EDC_DATASOURCE_DEFAULT_PORT: 5432 EDC_SQL_SCHEMA_AUTOCREATE: true - WEB_HTTP_PUBLIC_PORT: ${CONN_WEB_HTTP_PUBLIC_PORT:-8185} - WEB_HTTP_PUBLIC_PATH: ${CONN_WEB_HTTP_PUBLIC_PATH:-/api/public} - EDC_DATAPLANE_API_PUBLIC_BASEURL: "http://${SED_PUBLIC_HOSTNAME}:${CONN_WEB_HTTP_PUBLIC_PORT}${CONN_WEB_HTTP_PUBLIC_PATH}" + WEB_HTTP_PUBLIC_PORT: ${CONN_DATA_PLANE_PUBLIC_PORT:-8185} + WEB_HTTP_PUBLIC_PATH: ${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} + EDC_DATAPLANE_API_PUBLIC_BASEURL: "http://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH}" WEB_HTTP_CONTROL_PORT: ${CONN_WEB_HTTP_CONTROL_PORT:-9191} WEB_HTTP_CONTROL_PATH: ${CONN_WEB_HTTP_CONTROL_PATH:-/api/control} WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} diff --git a/mvm/offering-manager.yaml b/mvm/offering-manager.yaml index 8f5795b..bab69d2 100644 --- a/mvm/offering-manager.yaml +++ b/mvm/offering-manager.yaml @@ -14,9 +14,9 @@ services: - "${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080}:${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080}" # Offering Manager API, exposed for local client applications. We assume the same port is forwarded. environment: CONTAINER_ENDPOINT: http://0.0.0.0:${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080} - EXTERNAL_ENDPOINT: http://${SED_PUBLIC_HOSTNAME}:${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080} + EXTERNAL_ENDPOINT: http://${OFFERING_MANAGER_HOSTNAME}:${OFFERING_MANAGER_PUBLIC_API_PORT:-8080} ENABLE_CONNECTOR_SERVICE: true - EXTERNAL_CONNECTOR_ENDPOINT: http://${SED_PUBLIC_HOSTNAME}:${CONN_WEB_HTTP_PUBLIC_PORT:-8185}${CONN_WEB_HTTP_PUBLIC_PATH:-/api/public} + EXTERNAL_CONNECTOR_ENDPOINT: http://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT:-8185}${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} INTERNAL_CONNECTOR_ENDPOINT: http://connector-controlplane:${CONN_WEB_HTTP_MANAGEMENT_PORT} ENABLE_DLTBOOTH_SERVICE: true INTERNAL_DLTBOOTH_ENDPOINT: http://dlt-booth:${DLT_HOST_PORT} From 0cc827f768f40e3b7e1ae41db83a5b73f7f55cdc Mon Sep 17 00:00:00 2001 From: Thomas BOUSSELIN Date: Fri, 24 Oct 2025 18:50:34 +0200 Subject: [PATCH 2/5] feat: use https --- mvm/connector.yaml | 4 ++-- mvm/offering-manager.yaml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mvm/connector.yaml b/mvm/connector.yaml index 06bb0de..a1f26b0 100644 --- a/mvm/connector.yaml +++ b/mvm/connector.yaml @@ -32,7 +32,7 @@ services: WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} WEB_HTTP_PATH: ${CONN_WEB_HTTP_PATH:-/api} EDC_CONTROL_ENDPOINT: http://connector-dataplane:${CONN_WEB_HTTP_CONTROL_PORT}${CONN_WEB_HTTP_CONTROL_PATH} - EDC_DSP_CALLBACK_ADDRESS: http://${OFFERING_MANAGER_HOSTNAME}:${CONN_CP_PUBLIC_DSP_PORT}${CONN_CONTROL_PLANE_PATH} + EDC_DSP_CALLBACK_ADDRESS: https://${OFFERING_MANAGER_HOSTNAME}:${CONN_CP_PUBLIC_DSP_PORT}${CONN_CONTROL_PLANE_PATH} EDC_HTTP_CLIENT_HTTPS_ENFORCE: ${CONN_HTTPS_ENFORCE} SED_DLT_BOOTH_BASE_URL: "http://dlt-booth:${DLT_HOST_PORT}" SED_VERIFIER_BASE_URL: "http://verifier:${VERIFIER_HOST_PORT}" @@ -72,7 +72,7 @@ services: EDC_SQL_SCHEMA_AUTOCREATE: true WEB_HTTP_PUBLIC_PORT: ${CONN_DATA_PLANE_PUBLIC_PORT:-8185} WEB_HTTP_PUBLIC_PATH: ${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} - EDC_DATAPLANE_API_PUBLIC_BASEURL: "http://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH}" + EDC_DATAPLANE_API_PUBLIC_BASEURL: "https://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH}" WEB_HTTP_CONTROL_PORT: ${CONN_WEB_HTTP_CONTROL_PORT:-9191} WEB_HTTP_CONTROL_PATH: ${CONN_WEB_HTTP_CONTROL_PATH:-/api/control} WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} diff --git a/mvm/offering-manager.yaml b/mvm/offering-manager.yaml index bab69d2..a3eb0a1 100644 --- a/mvm/offering-manager.yaml +++ b/mvm/offering-manager.yaml @@ -14,9 +14,9 @@ services: - "${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080}:${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080}" # Offering Manager API, exposed for local client applications. We assume the same port is forwarded. environment: CONTAINER_ENDPOINT: http://0.0.0.0:${OFFERING_MANAGER_EXTERNAL_API_PORT:-8080} - EXTERNAL_ENDPOINT: http://${OFFERING_MANAGER_HOSTNAME}:${OFFERING_MANAGER_PUBLIC_API_PORT:-8080} + EXTERNAL_ENDPOINT: https://${OFFERING_MANAGER_HOSTNAME}:${OFFERING_MANAGER_PUBLIC_API_PORT:-8080} ENABLE_CONNECTOR_SERVICE: true - EXTERNAL_CONNECTOR_ENDPOINT: http://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT:-8185}${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} + EXTERNAL_CONNECTOR_ENDPOINT: https://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT:-8185}${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} INTERNAL_CONNECTOR_ENDPOINT: http://connector-controlplane:${CONN_WEB_HTTP_MANAGEMENT_PORT} ENABLE_DLTBOOTH_SERVICE: true INTERNAL_DLTBOOTH_ENDPOINT: http://dlt-booth:${DLT_HOST_PORT} From efa4f5dc406b492307a8c16bd9854736a7836536 Mon Sep 17 00:00:00 2001 From: Thomas BOUSSELIN Date: Wed, 5 Nov 2025 18:01:02 +0100 Subject: [PATCH 3/5] fix: EDC_DSP_CALLBACK_ADDRESS --- mvm/connector.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mvm/connector.yaml b/mvm/connector.yaml index a1f26b0..f15f192 100644 --- a/mvm/connector.yaml +++ b/mvm/connector.yaml @@ -32,7 +32,7 @@ services: WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} WEB_HTTP_PATH: ${CONN_WEB_HTTP_PATH:-/api} EDC_CONTROL_ENDPOINT: http://connector-dataplane:${CONN_WEB_HTTP_CONTROL_PORT}${CONN_WEB_HTTP_CONTROL_PATH} - EDC_DSP_CALLBACK_ADDRESS: https://${OFFERING_MANAGER_HOSTNAME}:${CONN_CP_PUBLIC_DSP_PORT}${CONN_CONTROL_PLANE_PATH} + EDC_DSP_CALLBACK_ADDRESS: https://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH} EDC_HTTP_CLIENT_HTTPS_ENFORCE: ${CONN_HTTPS_ENFORCE} SED_DLT_BOOTH_BASE_URL: "http://dlt-booth:${DLT_HOST_PORT}" SED_VERIFIER_BASE_URL: "http://verifier:${VERIFIER_HOST_PORT}" From 7471d3f39d5dc799abafa98ed8cb3fc83ff7c94f Mon Sep 17 00:00:00 2001 From: Thomas Bousselin <61795238+thomasBousselin@users.noreply.github.com> Date: Thu, 6 Nov 2025 09:20:07 +0100 Subject: [PATCH 4/5] Apply suggestion from @xamcost Co-authored-by: Maxime Costalonga --- mvm/connector.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mvm/connector.yaml b/mvm/connector.yaml index f15f192..92738a8 100644 --- a/mvm/connector.yaml +++ b/mvm/connector.yaml @@ -32,7 +32,7 @@ services: WEB_HTTP_PORT: ${CONN_WEB_HTTP_PORT:-18181} WEB_HTTP_PATH: ${CONN_WEB_HTTP_PATH:-/api} EDC_CONTROL_ENDPOINT: http://connector-dataplane:${CONN_WEB_HTTP_CONTROL_PORT}${CONN_WEB_HTTP_CONTROL_PATH} - EDC_DSP_CALLBACK_ADDRESS: https://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH} + EDC_DSP_CALLBACK_ADDRESS: https://${CONN_CONTROL_PLANE_HOSTNAME}:${CONN_CONTROL_PLANE_PORT}${CONN_CONTROL_PLANE_PATH} EDC_HTTP_CLIENT_HTTPS_ENFORCE: ${CONN_HTTPS_ENFORCE} SED_DLT_BOOTH_BASE_URL: "http://dlt-booth:${DLT_HOST_PORT}" SED_VERIFIER_BASE_URL: "http://verifier:${VERIFIER_HOST_PORT}" From 35cd311ec40210d02b69b928a3fd0452cf832926 Mon Sep 17 00:00:00 2001 From: Thomas BOUSSELIN Date: Thu, 6 Nov 2025 13:30:35 +0100 Subject: [PATCH 5/5] feat: remove breaking port configuration --- mvm/connector.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mvm/connector.yaml b/mvm/connector.yaml index 92738a8..05039fa 100644 --- a/mvm/connector.yaml +++ b/mvm/connector.yaml @@ -21,7 +21,7 @@ services: EDC_DATASOURCE_DEFAULT_USER: ${CONN_PERSISTENCE_USER} EDC_DATASOURCE_DEFAULT_PASSWORD: ${CONN_PERSISTENCE_PASSWORD} EDC_SQL_SCHEMA_AUTOCREATE: true - WEB_HTTP_PROTOCOL_PORT: ${CONN_CONTROL_PLANE_PORT:-8282} + WEB_HTTP_PROTOCOL_PORT: 8282 # same as the port binding WEB_HTTP_PROTOCOL_PATH: ${CONN_CONTROL_PLANE_PATH:-/api/dsp} WEB_HTTP_MANAGEMENT_PORT: ${CONN_WEB_HTTP_MANAGEMENT_PORT:-8181} WEB_HTTP_MANAGEMENT_PATH: ${CONN_WEB_HTTP_MANAGEMENT_PATH:-/api/dsp} @@ -70,7 +70,7 @@ services: EDC_DATASOURCE_DEFAULT_HOST: connector-postgres EDC_DATASOURCE_DEFAULT_PORT: 5432 EDC_SQL_SCHEMA_AUTOCREATE: true - WEB_HTTP_PUBLIC_PORT: ${CONN_DATA_PLANE_PUBLIC_PORT:-8185} + WEB_HTTP_PUBLIC_PORT: 8185 # same as the port binding WEB_HTTP_PUBLIC_PATH: ${CONN_DATA_PLANE_PUBLIC_PATH:-/api/public} EDC_DATAPLANE_API_PUBLIC_BASEURL: "https://${CONN_DATA_PLANE_HOSTNAME}:${CONN_DATA_PLANE_PUBLIC_PORT}${CONN_DATA_PLANE_PUBLIC_PATH}" WEB_HTTP_CONTROL_PORT: ${CONN_WEB_HTTP_CONTROL_PORT:-9191}