From c2daa781da86a5c00e3b4761715237444b9c4942 Mon Sep 17 00:00:00 2001 From: junho Date: Sat, 29 Aug 2026 13:45:22 +0900 Subject: [PATCH] Expose MySQL and PostgreSQL protocol ports in ClickHouseContainer ClickHouse server provides native compatibility with MySQL (port 9004) and PostgreSQL (port 9005) wire protocols by default. Previously, ClickHouseContainer only exposed the HTTP (8123) and Native (9000) ports, preventing users from connecting via MySQL and PostgreSQL drivers/clients without manual port configuration. Expose MYSQL_PORT (9004) and POSTGRESQL_PORT (9005) by default, and provide helper methods (getMysqlPort(), getPostgresqlPort(), getMysqlJdbcUrl(), getPostgresqlJdbcUrl()) in ClickHouseContainer. Fixes #3827 --- modules/clickhouse/build.gradle | 2 + .../clickhouse/ClickHouseContainer.java | 48 +++++++++++++- .../containers/ClickHouseContainer.java | 6 +- .../clickhouse/ClickHouseContainerTest.java | 65 +++++++++++++++++++ 4 files changed, 119 insertions(+), 2 deletions(-) diff --git a/modules/clickhouse/build.gradle b/modules/clickhouse/build.gradle index 59ea169583c..9dac6d64eaf 100644 --- a/modules/clickhouse/build.gradle +++ b/modules/clickhouse/build.gradle @@ -11,6 +11,8 @@ dependencies { testRuntimeOnly(group: 'com.clickhouse', name: 'clickhouse-jdbc', version: '0.9.8', classifier: 'all') testImplementation 'com.clickhouse:client-v2:0.9.8' + testImplementation 'org.mariadb.jdbc:mariadb-java-client:3.5.9' + testImplementation 'org.postgresql:postgresql:42.7.12' testImplementation testFixtures(project(':testcontainers-r2dbc')) testRuntimeOnly(group: 'com.clickhouse', name: 'clickhouse-r2dbc', version: '0.9.8', classifier: 'http') } diff --git a/modules/clickhouse/src/main/java/org/testcontainers/clickhouse/ClickHouseContainer.java b/modules/clickhouse/src/main/java/org/testcontainers/clickhouse/ClickHouseContainer.java index 02a02267ec5..941d22114ac 100644 --- a/modules/clickhouse/src/main/java/org/testcontainers/clickhouse/ClickHouseContainer.java +++ b/modules/clickhouse/src/main/java/org/testcontainers/clickhouse/ClickHouseContainer.java @@ -17,6 +17,8 @@ * */ public class ClickHouseContainer extends JdbcDatabaseContainer { @@ -29,6 +31,10 @@ public class ClickHouseContainer extends JdbcDatabaseContainer