/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
。
我在 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
。