java.lang.IllegalStateException:先前尝试查找 Docker 环境失败不会重试请查看日志并检查配置

问题描述

我正在尝试在 docker 中运行我的 Spring Boot 应用程序 junit 测试,然后创建该应用程序的映像。下面是我的 Dockerfile:

User

现在在我的一些单元测试用例中,我使用具有 maven 依赖项的 testcontainers 作为:-

OuterRef

我在测试时使用测试容器来启动 cassandra 和 redis 容器。 但不知何故,使用 testcontainers 的类因异常而失败:

FROM adoptopenjdk/openjdk14:alpine-jre as base

copY .mvn/ .mvn
copY mvnw pom.xml ./
RUN ./mvnw -B dependency:resolve-plugins dependency:resolve
copY src ./src

FROM base as test
CMD ["./mvnw","test"]

FROM base as build
RUN ./mvnw package

copY target/testapp-0.0.1-SNAPSHOT.jar testapp.jar

EXPOSE 8080
ENTRYPOINT ["java","-jar","testapp.jar"]

尽管当我不在 docker 中运行它而是在本地运行时,一切都运行良好。

解决方法

您可能没有将您的用户添加到 docker 组,请尝试:

sudo usermod -aG docker $USER

退出,重新登录。检查用户是否具有适当的组并再次启动您的应用。