Dockerized应用程序抛出读取操作超时错误并退出



我有一个express应用程序,它从IronMQ推送队列获取数据我已经对该应用程序进行了Docker处理,在Docker容器中运行该应用程序时,在一段空闲时间(如20-30分钟)后,该应用程序抛出错误并退出:

Error: read tcp 192.168.59.3:50346->192.168.59.103:2376: read: operation timed out

我的boot2docker ip-->192.168.59.103

我已在3000转报港口。

我尝试过使用进程对象来捕获未捕获的异常,但没有任何帮助。

注意:我在本地的docker之外运行了该应用程序,该应用程序运行良好,不会出现错误并注销。所以问题似乎出在docker身上。

事实证明,当您在附加模式下执行docker run命令时,即使用-a参数或不使用-d参数,类似于:

docker run -a <imageID>docker run <imageID>

Docker默认情况下会在一段时间后从容器中分离,并以分离模式运行容器。这意味着您的应用程序在后台运行良好。

因此出现错误:超时

注意:docker文档中没有明确提到这一点,所以我们认为可以在这里记录这一点以供将来参考。

相关内容

  • 没有找到相关文章