Error: Unable to access jarfile

问题遇到的现象和发生背景

linux 中使用docker,构建springboot项目镜像并启动容器,在启动容器的时候报错

问题相关代码,请勿粘贴截图

dockerfile内容:

FROM java:8
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/docker/translate/translate.jar"]

jar包存放位置

img


docker 容器构建命令

docker run --name translate -p 10086:10086 -d translate

镜像

img

运行结果及报错内容

img

我的解答思路和尝试过的方法

查了好多,说是Dockerfile的启动命令 jar包位置不对,可是反复确认这个位置没有问题。怀疑是不是启动命令哪个地方写错了。

我想要达到的结果

Dockerfile文件编写错误,主要原因是没将jar复制到容器中,容器启动执行命令肯定报错找不到Jar

Dockerfile文件编写参考如下:

# 基础镜像
FROM openjdk:8

#申明一个环境变量
ENV HOME_PATH /home

#指定容器启动时,执行命令会在该目录下执行
WORKDIR $HOME_PATH

#应用构建成功后的jar复制到容器指定目录下
ADD target/SpringBoot-0.0.1-SNAPSHOT.jar $HOME_PATH/app.jar

#指定容器内部端口
EXPOSE 8888

#容器启动时执行的命令
ENTRYPOINT ["java","-jar","app.jar"]