You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M2 Mac下Docker环境检测失败求助(Spring Boot+Testcontainers)

问题:M2 Mac上Maven打包/Docker Compose构建时Testcontainers无法找到Docker环境

使用环境

  • M2 Mac(OS X Ventura 13.3)
  • Spring Boot v3.1.2
  • Test Containers v1.19.1
  • Docker Desktop v4.24.2

问题现象

单独运行集成测试可正常通过,但执行命令 mvn -f pom.xml clean package 时,出现错误:Could not find a valid Docker environment. Please check configuration。

同时,使用docker-compose构建镜像时,在RUN mvn -f pom.xml clean package步骤也会触发相同错误,但不通过docker-compose直接本地运行测试则无异常。

已尝试的操作

试过相关的常规排查方案,但均未解决问题。

相关代码示例

集成测试类

@Testcontainers
@AutoConfigureWebTestClient(timeout = "36000")
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class MyServiceIntegrationTests
{

     @Container
    static PostgreSQLContainer<?> postgresqlContainer  = new PostgreSQLContainer<>("postgres:15.1-alpine");

    @BeforeAll
    static void beforeAll() {
        postgresqlContainer.start();
    }

    @AfterAll
    static void afterAll() {
        postgresqlContainer.stop();
    }

    @DynamicPropertySource
    static void setProperties(DynamicPropertyRegistry registry) {
        registry.add("spring.datasource.url", postgresqlContainer::getJdbcUrl);
        registry.add("spring.datasource.username", postgresqlContainer::getUsername);
        registry.add("spring.datasource.password", postgresqlContainer::getPassword);
    }
}

Dockerfile

FROM maven:3.8.5-openjdk-18-slim AS build
RUN mkdir -p workspace
WORKDIR workspace
COPY pom.xml /workspace
COPY src /workspace/src
RUN mvn -f pom.xml clean package

FROM openjdk:18-alpine
COPY --from=build /workspace/target/*.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar"]

请问有没有M2 Mac用户成功解决这个问题?


内容的提问来源于stack exchange,提问作者mh377

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 08:28:31