docker 获取拨号tcp:从容器内的服务访问Internet时的I/O超时

4uqofj5v  于 2022-11-22  发布在  Docker
关注(0)|答案(1)|浏览(334)

我正在使用PubNub(GO SDK)发布/订阅服务接收消息,但即使我能够从容器内部ping google.com,也没有收到任何消息。
在Pubnub日志中,每次我的程序尝试连接到源(Pubnub服务器)时,我都会收到“dial tcp:I/O超时”错误。我猜这是由于主机或容器中的Internet连接速度慢造成的。
我应该怎么做才能避免这个错误?

ukdjmx9f

ukdjmx9f1#

我是解决这个错误包括谷歌DNS(8.8.8.8)在我的机器的名称服务器.我认为这个错误是由于缓慢的域名解析过程,因为我的机器是从DHCP获得DNS.
我遵循以下步骤:
1.在/etc/resolvconf/resolv.conf.d/base文件中设置静态DNS:
域名服务器8.8.8.8
域名服务器8.8.4.4
1.配置您的PC,使其使用用户提供的DNS,而不是从DHCP获取DNS。为此,请打开此文件/etc/dhcp/dhclient.conf并添加以下行:
取代域名服务器8.8.8.8、8.8.4.4;
1.重新启动网络管理器,使用:
sudo服务网络管理器重新启动

相关问题