【问题标题】:Docker build failed for InvokeWebrequest调用 Webrequest 的 Docker 构建失败
【发布时间】:2019-07-17 09:50:32
【问题描述】:

我有一个 docker 文件来在 windows server core 上安装 sql server。以下命令失败并出现错误

Docker 命令

RUN Invoke-WebRequest -Uri $env:box -OutFile SQL.box ;      Invoke-WebRequest -Uri $env:exe -OutFile SQL.exe ;         Start-Process -Wait -FilePath .\SQL.exe -ArgumentList /qs, /x:setup ;         .\setup\setup.exe /q /ACTION=Install /INSTANCENAME=MSSQLSERVER /FEATURES=SQLEngine /UPDATEENABLED=0 /SQLSVCACCOUNT='NT AUTHORITY\System' /SQLSYSADMINACCOUNTS='BUILTIN\ADMINISTRATORS' /TCPENABLED=1 /NPENABLED=0 /IACCEPTSQLSERVERLICENSETERMS ;         Remove-Item -Recurse -Force SQL.exe, SQL.box, setup

错误信息

Invoke-WebRequest :无法解析远程名称: 'go.microsoft.com' 在 line:1 char:76 + ... lyContinue';调用-WebRequest -Uri $env:box -OutFile SQL.box ;调用... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:Htt pWebRequest) [Invoke-WebRequest], 网络异常 + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShe
ll.Commands.InvokeWebRequestCommand

同一个 docker 文件昨天工作,但今天它连续失败。有人遇到过类似的问题吗?

【问题讨论】:

  • DNS 出了问题。尝试在不同的机器上构建。通常是与 Invoke-WebRequest 无关的环境问题。禁用防火墙/AV 等

标签: docker containers dockerfile windows-container


【解决方案1】:

通过键入 json Docker 守护程序配置文件来配置 Docker 守护程序。 { …… “dns”:[“1.1.1.1”,“8.8.8.8”,“8.8.4.4”], ... }

【讨论】:

    【解决方案2】:

    我不确定到底是什么问题,但这对我有用:

    查看此脚本:https://github.com/MicrosoftDocs/Virtualization-Documentation/tree/master/windows-server-container-tools/CleanupContainerHostNetworking

    将它保存在某个地方(或克隆整个 repo)。 运行适合您需要的清理命令并重新启动计算机。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-24
      • 1970-01-01
      • 2021-04-02
      • 2022-01-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多