Docker镜像未构建:Linux容器

时间:2018-06-26 12:07:44

标签: docker cmd proxy .net-core linux-containers

我正在尝试在Windows 10机器上的linux容器上对简单的dotnetcore webapi进行docker化,每当我构建dockerfile时,都会出现此错误:

  

c:\ docker-tutrial> docker build -t docker-tutorial。

     

将构建上下文发送到Docker守护程序1.364MB

     

步骤1/4:来自Microsoft / dotnet:2.1   获取https://registry-1.docker.io/v2/:   net / http:请求被取消,而   等待连接(等待时超出了Client.Timeout   标头)

我尝试过:

  

c:\ docker-tutrial> docker build --build -arg   http_proxy = http://PROXY:8080 --build -arg   https_proxy = http://PROXY:8080 -t docker-tutrial。

     

获取https://registry-1.docker.io/v2/:net / http:请求被取消,而   等待连接(等待时超出了Client.Timeout   标头)

我的Dockerfile是:

FROM microsoft/dotnet:2.1
WORKDIR /app
COPY ./publish .
ENTRYPOINT ["dotnet", "docker-tutrial.dll"]

我相信这是代理问题!

2 个答案:

答案 0 :(得分:0)

在经历了各种github问题之后,我发生了同样的事情,我发现克服此问题的最佳方法是基于运气,这是完成了这四个步骤之后的结果:

  1. 将8.8.8.8和8.8.4.4输入为Docker DNS
  2. 重新启动Docker服务
  3. 如果您位于任何防火墙/代理后面,请确保也更新这些设置。
  4. 重新启动计算机。

这四个步骤通常可以解决我的问题。

答案 1 :(得分:0)

在我修复了如greyhame所述的命令后,它就起作用了: docker build --build -arg http_proxy = http://PROXY:8080 --build -arg https_proxy = https://PROXY:port -t docker-tutrial。

然后我在Dockerfile中传递了这两行: ENV HTTP_PROXY“ PROXY:PORT” ENV HTTPS_PROXY“ PROXY:PORT”