【docker通信问题】解决docker的内嵌DNS无法解析github,导致容器无法联网问题
在尝试利用docker内部dns解析github首先需要进入docker命令行docker ps复制contatinerID ,替换下列占位符进入docker命令符,进行常规ping看是否能ping通如果成功:说明容器的基础网络是通的,问题基本可以确定在 DNS 解析上。我的ping通了如果失败 (e.g., Network is unreachable):说明容器的网络配置有严重问题,无法访问外
·
在尝试利用docker内部dns解析github
首先需要进入docker命令行
docker ps
复制contatinerID ,替换下列占位符
docker exec -it 【替换】 /bin/sh~ $ cat /etc/resolv.conf
进入docker命令符,进行常规ping看是否能ping通
ping -c 4 8.8.8.8
-
如果成功:说明容器的基础网络是通的,问题基本可以确定在 DNS 解析上。我的ping通了
-
如果失败 (e.g., Network is unreachable):说明容器的网络配置有严重问题,无法访问外部。你需要检查 Docker 的网络模式(bridge, host 等)或宿主机的防火墙规则。
尝试解析出错的域名
~ $ nslookup api.github.com
;; connection timed out; no servers could be reached
出错,就确认了是 DNS 问题
解决方法
打开docker desktop
插入,利用已知的dns进行解析即可
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"dns": [
"8.8.8.8",
"1.1.1.1"
]
}
发现可以执行
更多推荐

所有评论(0)