我已经在docker中创建了一个映像,并尝试使用/app/run.sh: line 7: java: command not found
运行时有sudo docker run com.project.question/question:1.0.0
。这是我的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-alpine
来自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"]
答案 0 :(得分:0)
以下内容不合并图像,它提取2个图像,然后基于第二个图像Ubuntu(不包含Java)继续构建:
FROM openjdk:8u121-jdk-alpine
FROM ubuntu:18.04
您可能想要基于stretch
的openjdk图像,而不是Alpine,然后删除第二行FROM
。