我需要创建一个必须包含weblogic(10.3.6)和java(1.8)的映像。我写了一个dockerfile,我遇到了一个错误。我需要了解图像脚本来构建此垂直图像。我分享了我的dockerfile内容,但是由于遇到以下错误,所以不确定是否正确
/bin/sh: /bin/tar: No such file or directory
The command '/bin/sh -c /bin/tar -zxvf /home/docuser/myimages/jdk-8u181-linux-x64.tar.gz' returned a non-zero code: 127
请求帮助我构建新的docker映像或帮助我修改下面创建的dockerfile
FROM oraclelinux:7-slim
WORKDIR /home/docuser/myimages/
ADD . /home/docuser/myimages/
RUN /bin/tar -zxvf /home/docuser/myimages/jdk-8u181-linux-x64.tar.gz
RUN /home/docuser/myimages/jdk1.8.0_181/bin/java -jar wls1036_generic.jar
答案 0 :(得分:1)
仍然,我们应该参考Docker的文档。关于Dockerfile,有best practice。
因此,ADD的最佳用途是将本地tar文件自动提取到映像中,如ADD rootfs.tar.xz /中所示。
这意味着您只能使用以下唯一说明:
ADD jdk-8u181-linux-x64.tar.gz /home/docuser/myimages/
为回答您的问题,我将整个Dockerfile放在下面。
FROM oraclelinux:7-slim
ADD jdk-8u181-linux-x64.tar.gz /home/docuser/myimages
COPY wls1036_generic.jar /home/docuser/myimages
WORKDIR /home/docuser/myimages
RUN chmod u+x /home/docuser/myimages/jdk1.8.0_181/bin/*
RUN /home/docuser/myimages/jdk1.8.0_181/bin/java -jar wls1036_generic.jar
答案 1 :(得分:0)
docker映像oraclelinux:7-slim
未安装必需的软件包。
在执行“ targz”命令之前,您需要先安装tar
和gzip
:
FROM oraclelinux:7-slim
RUN yum install -y tar gzip
WORKDIR /home/docuser/myimages/
ADD . /home/docuser/myimages/
RUN /bin/tar xvzf /home/docuser/myimages/jdk-8u181-linux-x64.tar.gz