/app/run.sh:第 7 行:java:在 运行 docker 图像时找不到命令

/app/run.sh: line 7: java: command not found while running docker image

我在 docker 中创建了一个图像,并在尝试 运行 使用 sudo docker run com.project.question/question:1.0.0 时拥有 /app/run.sh: line 7: java: command not found 。这是我的 run.sh

#!/bin/bash

SPRING_ACTIVE_PROFILE=${SPRING_ACTIVE_PROFILE:-"local-docker"}
GIT_BRANCH_LABEL=${GIT_BRANCH_LABEL:-"develop"}

java -jar -Djava.security.egd=file:/dev/urandom -    Dspring.profiles.active=${SPRING_ACTIVE_PROFILE} -    Dgit.config.active.branch=${GIT_BRANCH_LABEL} -Duser.timezone=Asia/Kolkata -XX:+PrintFlagsFinal $JAVA_OPTIONS -jar ${APP_JAR_NAME}.jar

这是我的 DockerFile 来自 openjdk:8u121-jdk-高山 从 ubuntu:18.04

ENV APP_JAR_NAME question

RUN apt-get update
RUN apt-get install -y curl apt-utils wget unzip
RUN rm -rf /var/chache/apk/*
RUN mkdir /app

ADD ${APP_JAR_NAME}.jar /app/
COPY run.sh /app/
RUN chmod +x /app/run.sh

WORKDIR /app

EXPOSE 8080

ENTRYPOINT ["/bin/bash","-c"]
CMD ["/app/run.sh"]

我的 docker 中有以下图片 我正在寻找几个小时的解决方案,但没有找到任何有用的东西。请帮我解决这个问题。谢谢

以下不合并图像,它提取 2 个图像,然后根据第二个图像继续构建,Ubuntu,其中不包括 Java:

FROM openjdk:8u121-jdk-alpine
FROM ubuntu:18.04

您可能需要基于 stretch 的 openjdk 映像,而不是 Alpine,然后删除第二行 FROM