启动容器时无法访问 jarfile



我正在尝试在 docker 中构建我的应用程序并尝试启动它。下面是我的码头工人文件,

FROM openjdk:11.0.7
MAINTAINER "Kannan Ramamoorthy"
RUN mkdir /var/myapp
WORKDIR /var/myapp
COPY . .
RUN ./gradlew build -x test
EXPOSE 8080
RUN ls  /var/myapp/build/libs/myapp*.jar
RUN whoami
USER root
ENTRYPOINT ["java", "-jar", "build/libs/myapp*.jar"]

一些观察,

  • whoami打印root.
  • ls打印文件。
  • 如果我将入口点更改为其他内容,例如"ping", "google.com",我可以进入服务器并启动 jar。
  • 我尝试在最后添加CMD ["-start"],正如这里所建议的那样(尽管我还不明白为什么(。
  • 我尝试给出jar仍然相同的错误的绝对路径。

这些都不起作用。关于修复的任何建议以及为什么以这种方式发生?

发现问题是通配符不适用于 Dockerfile 的入口点语句,这里讨论了问题的解决方案和原因

最新更新