Docker构建因InvokeWebrequest而失败

时间:2019-07-17 09:50:32

标签: docker containers dockerfile windows-container

我有一个docker文件在Windows服务器核心上安装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'在线:1字符:76   + ... lyContinue'; Invoke-WebRequest -Uri $ env:box -OutFile SQL.box;发票...   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       + CategoryInfo:InvalidOperation:(System.Net.HttpWebRequest:Htt pWebRequest)[Invoke-WebRequest],   WebException       + FullyQualifiedErrorId:WebCmdletWebResponseException,Microsoft.PowerShe
  ll.Commands.InvokeWebRequestCommand

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

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:0)

我不确定问题到底出在哪里,但这对我有用:

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

将其保存在某个位置(或克隆整个存储库)。 运行适合您需要的清理命令,然后重新启动计算机。