我需要在python3-onbuild镜像中运行一个Java程序(它基于debian jessie)
。
我通过安装Java扩展了dockerfile,但是如果我尝试打印出版本,则会导致
我用我的代码创建了一个repository。
我的Dockerfile:
FROM python:3-onbuild
ONBUILD RUN ["apt-get", "install", "-y", "openjdk-7-jre"]
# Define commonly used JAVA_HOME variable
ONBUILD ENV JAVA_HOME /usr/java/default
ONBUILD ENV PATH $PATH:$JAVA_HOME/bin
CMD ["java", "-version"]
知道发生了什么问题以及如何解决吗?
最佳答案
我认为您误解了ONBUILD
。从docs:
因此,当docker build
在FROM
中遇到Dockerfile
指令时,它将在python镜像中的ONBUILD
指令上执行。在您的Dockerfile
中,永远不会执行ONBUILD
指令,因为只有从另一个Dockerfile
引用图像时才会触发它们。
我认为您只是想使用RUN
而不是ONBUILD
,但是我不确定为什么您要尝试使用ONBUILD
。
关于docker - python3-onbuild docker中的Java,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33174333/