Docker构建错误:命令'/bin/sh-c apt get安装&x2013;y apache2';返回非零代码:100

Docker构建错误:命令'/bin/sh-c apt get安装&x2013;y apache2';返回非零代码:100,docker,dockerfile,Docker,Dockerfile,我正在尝试建立一个Dockerfile FROM ubuntu RUN apt-get update RUN apt-get install –y apache2 RUN apt-get install –y apache2-utils RUN apt-get clean EXPOSE 80 CMD [“apache2ctl”, “-D”, “FOREGROUND”] 当我运行这个命令时,docker build–t=“mywebserver”。我在控制台中看到下面提供的错误 E:

我正在尝试建立一个Dockerfile

FROM ubuntu 
RUN apt-get update 
RUN apt-get install –y apache2 
RUN apt-get install –y apache2-utils 
RUN apt-get clean 
EXPOSE 80
CMD [“apache2ctl”, “-D”, “FOREGROUND”]
当我运行这个命令时,
docker build–t=“mywebserver”。
我在控制台中看到下面提供的错误

E: Unable to locate package –y
The command '/bin/sh -c apt-get install –y apache2' returned a non-zero code: 100

我不知道怎么做,但我想你在y前面用了一个破折号而不是连字符

您想要的是
-y
而不是
-y


如果你仔细观察,会发现一个细微的差别。

我不知道怎么做,但我认为你在y前面使用了一个en破折号而不是连字符

您想要的是
-y
而不是
-y


如果仔细观察,会发现细微的差别。

Dockerfile看起来不错,可能与代理/防火墙有关

我会尝试以下方法:

FROM ubuntu 
RUN apt-get update

使用
docker build--no cache-t mywebserver运行
。如果没有,我建议在dockerfile中使用
ENV
设置
http/https
代理。

dockerfile
看起来不错,可能与代理/防火墙有关

我会尝试以下方法:

FROM ubuntu 
RUN apt-get update

使用
docker build--no cache-t mywebserver运行
。如果没有,那么我建议在dockerfile中使用
ENV
设置
http/https
代理。

我认为格式在副本中丢失了。如果你看
它是
。确实如此,但是
apt get
中的连字符是正确的。将OP的
–y
复制并粘贴到我的本地环境中会产生相同的错误。我建议这绝对值得一试。如果OP复制并粘贴了代码,他们可能会意外地引入此错误。嗨,是的,这就是问题所在……但现在我明白了。”ting不同的错误,即无效的containerPort:cmd我认为格式随副本一起丢失。如果您查看
它是
。确实如此,但是
apt get
中的连字符是正确的。将OP的
–y
复制并粘贴到我的本地环境中会产生相同的错误。我建议这绝对值得一试。如果OP复制并粘贴了代码,他们可能会意外地引入此错误。嗨,是的,这就是问题所在……但现在我明白了。”您应该阅读这篇文章,特别是关于apt-get-inside-containers的block。您应该阅读这篇文章,特别是关于apt-get-inside-containers的block