Mad*_*d-D 6 docker docker-for-windows windows-container
我正在尝试使用 docker windows container构建图像。这是我的 dockerfile
FROM mcr.microsoft.com/windows/servercore:ltsc2019 as installer
RUN Invoke-WebRequest -URI 'www.google.com'
Run Code Online (Sandbox Code Playgroud)
当我运行它时,它无法连接到 google.com
Invoke-WebRequest : The remote name could not be resolved: 'www.google.com'
At line:1 char:73
Run Code Online (Sandbox Code Playgroud)
我在公司网络上工作,我尝试使用设置代理
RUN netsh winhttp set proxy proxy-server="http://proxy.com:80" bypass-list="*.xyz.com"
并导入了注册表HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
我的容器内的 ipconfig /all 给出以下结果
Windows IP Configuration
Host Name . . . . . . . . . . . . : 0d5119fe9ce4
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Hyper-V Network Adapter
Physical Address. . . . . . . . . : 00-15-5D-B4-55-54
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fd80::a1f4:ab74:983:af83%4(Preferred)
IPv4 Address. . . . . . . . . . . : 172.xxx.xxx.xx(Preferred)
Subnet Mask . . . . . . . . . . . : 255.xxx.xxx.xx
Default Gateway . . . . . . . . . : 172.xxx.xxx.xx
DHCPv6 IAID . . . . . . . . . . . : 67114333
DHCPv6 Client DUID. . . . . . . . : 00-01-40-01-25-D1-CB-C4-00-15-5D-D4-A5-54
DNS Servers . . . . . . . . . . . : 172.xxx.xxx.xx
10.xxx.xxx.xx
NetBIOS over Tcpip. . . . . . . . : Disabled
Run Code Online (Sandbox Code Playgroud)
我怀疑有一些 dns/防火墙问题或没有以正确的方式设置代理。有人可以帮助我确定根本原因并解决此问题。
fle*_*lec 10
我遇到了同样的问题,并且能够通过设置 DNS 来解决它。
如果您在构建期间进行调用,您可以在 docker 守护进程中进行设置。在 Docker Desktop 中,转到“设置”>“Docker 引擎”并将以下内容添加到 JSON 配置中:
"dns": ["1.1.1.1"]
Run Code Online (Sandbox Code Playgroud)
https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-dns-options
如果您在运行时遇到问题,您可以添加 dns 参数
--dns 1.1.1.1
Run Code Online (Sandbox Code Playgroud)
https://docs.docker.com/engine/reference/run/#network-settings
luk*_*kee 10
指定网络命令可以作为解决方法。适用于build和run
docker build --network="Default Switch" .
docker run --rm -it --network="Default Switch" mcr.microsoft.com/windows/servercore:ltsc2019
Run Code Online (Sandbox Code Playgroud)
这个名字就是来自这里的:
docker network ls
NETWORK ID NAME DRIVER SCOPE
79b90200b5ad Default Switch ics local
07ffb031d4b7 nat nat local
6682d6220de5 none null local
Run Code Online (Sandbox Code Playgroud)
由于某种原因 docker 默认 ( nat) 没有互联网连接。
| 归档时间: |
|
| 查看次数: |
4293 次 |
| 最近记录: |