diff --git a/modules/solr/src/main/java/org/testcontainers/solr/SolrContainer.java b/modules/solr/src/main/java/org/testcontainers/solr/SolrContainer.java index 536afa69dfd..28b47172ec3 100644 --- a/modules/solr/src/main/java/org/testcontainers/solr/SolrContainer.java +++ b/modules/solr/src/main/java/org/testcontainers/solr/SolrContainer.java @@ -96,13 +96,20 @@ protected void configure() { } // Generate Command Builder String command = "solr start -f"; + // Solr 10 starts in cloud mode by default + if (this.imageVersion.isGreaterThanOrEqualTo("10.0.0")) { + command = "solr start -f --user-managed"; + } // Add Default Ports addExposedPort(SOLR_PORT); // Configure Zookeeper if (configuration.isZookeeper()) { addExposedPort(ZOOKEEPER_PORT); - if (this.imageVersion.isGreaterThanOrEqualTo("9.7.0")) { + if (this.imageVersion.isGreaterThanOrEqualTo("10.0.0")) { + // zkRun is deprecated and no longer accepted without a value since Solr 10.1 + command = "-Dsolr.zookeeper.server.enabled=true --host localhost"; + } else if (this.imageVersion.isGreaterThanOrEqualTo("9.7.0")) { command = "-DzkRun --host localhost"; } else { command = "-DzkRun -h localhost"; diff --git a/modules/solr/src/test/java/org/testcontainers/solr/SolrContainerTest.java b/modules/solr/src/test/java/org/testcontainers/solr/SolrContainerTest.java index f63c4d38164..542069d431a 100644 --- a/modules/solr/src/test/java/org/testcontainers/solr/SolrContainerTest.java +++ b/modules/solr/src/test/java/org/testcontainers/solr/SolrContainerTest.java @@ -17,7 +17,7 @@ class SolrContainerTest { private SolrClient client = null; public static String[] getVersionsToTest() { - return new String[] { "solr:8.11.4", "solr:9.8.0" }; + return new String[] { "solr:8.11.4", "solr:9.8.0", "solr:10.1.0" }; } @AfterEach