命令'/ bin / sh -c返回一个非零的代码:127
我是新来的docker,所以我可能会做这个错误,但我想通过像这样的Dockerfile
来安装Tomcat6:
FROM rhel7:latest RUN cd /tmp RUN "wget", "http://www.us.apache.org/dist/tomcat/tomcat-6/v6.0.44/bin/apache-tomcat-6.0.44.tar.gz" RUN tar xzf apache-tomcat-6.0.44.tar.gz RUN mv apache-tomcat-6.0.44 /usr/local/tomcat6 RUN cd /usr/local/tomcat6 Run ./bin/start.sh
它在三线失败与:
RUN "wget", "http://www.us.apache.org/dist/tomcat/tomcat-6/v6.0.44/bin/apache-tomcat-6.0.44.tar.gz"
当我运行docker构build时,我得到这个:
我在用着:
- Oracle Virtual Box V4.3.28 r100309
- Docker在RHEL7上
在此先感谢您的帮助。
解决错误的图像是在wget CMD RUN yum -y install wget
之前添加wget CMD RUN yum -y install wget
如果你这样写,结果是一样的,只是不同的执行:
RUN wget http://www.us.apache.org/dist/tomcat/tomcat-6/v6.0.44/bin/apache-tomcat-6.0.44.tar.gz
在RUN
命令中不要使用引号和逗号。
从shell命令退出代码127意味着“未find命令”。 所以,就你的情况而言,当Docker运行它时,似乎引号内的“wget”没有被find。
在某些情况下,必须首先在Dockerfile中运行用于安装wget(或缺less任何命令行工具)的命令,因为某些基础Docker映像不会包含wget。 你会在失败的命令之前添加一行,如下所示:
RUN yum install -y wget