【发布时间】:2020-01-27 18:41:00
【问题描述】:
我正在尝试对使用 gradle 和 kotlin 的 spring boot 应用程序进行 dockerize。我有一个看起来像这样的 Dockerfile:
FROM java:8-jdk-alpine as build-and-run
WORKDIR /app
COPY . .
RUN ./gradlew build --stacktrace --scan
ENV ARTIFACT_NAME=resource-server-0.0.1-SNAPSHOT.jar
ENV APP_HOME=/app
WORKDIR $APP_HOME
COPY --from=build $APP_HOME/build/libs/$ARTIFACT_NAME .
EXPOSE 80
ENTRYPOINT ["java","-jar","/build/libs/$ARTIFACT_NAME"]
./gradlew build 命令在 docker 之外运行良好,但一旦我尝试构建 docker 映像,它就会失败:
xyz.resourceserver.ResourceServerApplicationTests > contextLoads FAILED
java.lang.IllegalStateException
Caused by: org.springframework.beans.factory.BeanCreationException
Caused by: org.hibernate.service.spi.ServiceException
Caused by: org.hibernate.HibernateException
我在application.properties 中确实有用于 Spring Boot 的数据库连接属性,所以我真的不知道这有什么问题。
【问题讨论】:
标签: spring hibernate spring-boot docker gradle