您好,欢迎访问一九零五行业门户网

docker无法解析域名怎么办

解决方法:1、用“cat /proc/sys/net/ipv4/ip_forward”查看“/proc”文件系统,确认系统是否打开ip转发功能;2、用“echo 1 > /proc/sys/net/ipv4/ip_forward”将文件内的内容由0修改为1即可打开ip转发功能;3、修改“/etc/sysctl.conf”文件内“ip_forward”的值可以永久修改ip转发。
本教程操作环境:linux7.3系统、docker19.03版、dell g3电脑。
docker无法解析域名怎么办一直报unknown host,无法解析域名,来一起看看详细的解决方法:
解决方法
1、linux系统默认没有打开ip转发功能,要确认ip转发功能的状态,
可以查看/proc文件系统,使用下面命令:
出于安全考虑,linux系统默认是禁止数据包转发的。
所谓转发即当主机拥有多于一块的网卡时,其中一块收到数据包,根据数据包的目的ip地址将包发往本机另一网卡,该网卡根据路由表继续发送数据包。配置linux系统的ip转发功能,首先保证硬件连通,然后打开系统的转发功能
cat /proc/sys/net/ipv4/ip_forward,该文件内容为0,表示禁止数据包转发,1表示允许。
2、如果上述文件中的值为0,说明禁止进行ip转发;
如果是1,则说明ip转发功能已经打开,要想打开ip转发功能,可以直接修改上述文件:
echo 1 > /proc/sys/net/ipv4/ip_forward
把文件的内容由0修改为1。禁用ip转发则把1改为0。
3、上面的命令并没有保存对ip转发配置的更改,下次系统启动时仍会使用原来的值
要想永久修改ip转发,需要修改/etc/sysctl.conf文件,修改下面一行的值:
net.ipv4.ip_forward = 1
修改后可以重启系统来使修改生效,也可以执行下面的命令来使修改生效:
sysctl -p /etc/sysctl.conf
进行了上面的配置后,ip转发功能就永久开启了
扩展知识:
进入 docker 容器后,在 hosts 文件中,配置域名解析。
# 进入 docker 容器docker exec -it my_web /bin/bash# 修改 hosts 文件vi /etc/hosts# 添加域名解析规则192.168.99.100 example.test# 利用 ping 命令验证一下,是否可以 ping 通ping example.test
如果你的 docker 宿主主机没有 ping 命令,你可以安装一下;当然,如果你不想安装的话也无所谓,你可以通过其他的方式来验证域名解析是否已经得到解决。
需要注意的是:每次重启容器(服务)后,容器中的 /etc/hosts 文件新增的配置就会失效,故需要重新配置一下。
推荐学习:《docker视频教程》
以上就是docker无法解析域名怎么办的详细内容。
其它类似信息

推荐信息