从Docker容器内部对本地主机的内部Tomcat REST调用

时间:2019-04-04 00:03:22

标签: docker tomcat dockerfile

我有一个dockerfile,该文件运行具有两个REST API,PostgreSQL数据库和Apache上Django站点的Tomcat 7 Web服务器。 (我知道最佳实践建议将它们作为单独的容器运行,但我想将整个系统打包为一个容器,以供非开发人员使用)。

我的一个REST API通过端点ServiceHost调用了另一个REST API。但是,在Docker的http://localhost:8080/rest2/insert中,bridge mode是指主机,而不是容器。

我尝试对容器ip localhost进行硬编码,但仍然出现172.17.0.2错误。

我认为这对于来自Connection Refused的{​​{1}} PostgreSQL连接也是一个问题。我有什么选择?

非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

如果确实将它们放在同一个容器中,则本地主机应该是正确的。

使用ps -e检查它们是否已经启动。

答案 1 :(得分:0)

无论出于何种原因,Connection Refused错误是由于Docker内存不足而引起的。我增加了内存限制,一切都很好。希望这会帮助将来挣扎的人!