0

我有一个从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有关。

4

1 回答 1

4

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

docker run -a <imageID> 或者 docker run <imageID>

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

因此出现错误:超时

注意:这在 docker 文档中没有明确提及,因此认为可以在此处记录以供将来参考。

于 2015-12-07T10:11:50.347 回答