服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

docker集装箱中的突然DNS问题

我使用一段代码进行一些自动操作,我需要在工作中进行操作。 代码在Docker容器中运行,代码使用nodejs编写。 部分脚本请求来自不同服务器的信息,该服务器不是所涉及的容器的兄弟姐妹 – 重要的是要指出,因为docker有一个内部的dns系统,可以假定问题的原因。 剧本已经使用了大约一年,现在已经连续三周。 突然间,我在日志中看到一个错误: getaddrinfo ENOTFOUND example.com example.com:443 at errnoException (dns.js:28:10) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:79:26) 我期望这是一个nodejs问题开始,但是当我在production containerinputbash并试图ping地址之后,它不能parsing地址 – ping直接工作的IP地址。 # ping example.com ping: unknown host 尝试ping主机中的地址没有任何问题,就像在我的电脑上,并在dev container的兄弟production container 。 这个脚本对组织来说是至关重要的,所以在一个急切的尝试中,我只是简单地删除了容器并重新运行。 马上就起作用了,现在已经运转了一个小时。 这对组织来说很好,但我的书呆子头脑不能rest。 发生什么事? 这怎么可能发生? 它能再次发生吗? 我能做些什么来阻止它? 我如何解决这个问题,而无需重新启动? 我的第一个想法是告诉nodejs为每个请求使用一个新的代理。 但感觉我相信这个问题是与操作系统有关,我不认为这将解决它。 到目前为止,我们已经创build了这个“待办事项列表”,如果这个问题再次出现: ping ip | 只是为了检查目的地了 ping主机名 ping任何其他的主机名,看它是否是一个特定的主机名或一般 挖主机名 cat /etc/resolv.conf ip a […]