2015-09-21 77 views
1

我想在Openshift上部署一个python TCP监听器,但我无法理解如何管理外部端口。 谷歌搜索Openshift自己的KB,this article被提到很多次,但不再可用。我的TCP服务器应用程序监听端口8080(按照$ OPENSHIFT_PYTHON_PORT),并试图通过端口8000从Internet连接到它。尽管如此,这意味着即使服务器应用程序不是,客户端应用程序也可以建立连接开始。Openshift绑定TCP端口

有没有人有关于如何做到这一点的具体信息?

+0

你google了吗? – manetsus

+1

是的,我做到了。并且大多数参考文献指向这个链接:https://www.openshift.com/kb/kb-e1038-i-cant-bind-to-a-port这是Openshift的KB上不再可用的文章。 – rmoledov

+0

正如您所提到的,您的服务器正在侦听TCP/8080,我认为您必须尝试在互联网的同一端口上访问它,而不是在端口8000上。或者您有某种第3层设备执行NAT或端口转发? –

回答

1

你不能与你的OpenShift齿轮建立原始TCP连接,只能建立http(80/443)和ws(8000/8443)连接。两种类型的连接都通过节点上的代理,http通过apache代理,然后ws通过节点代理。如果您想进行原始tcp连接,则必须使用位置计算机的端口转发,并确保您通过自定义盒式磁带发布端口信息。

0

Internet Archive grab of the removed KB article you mentioned说,你可以结合内部端口15000至35530.但是现在已经改变了:我的测试OpenShift盒没有让我绑定到任何本地主机端口。它的$ OPENSHIFT_PYTHON_PORT可以通过普通的Web端口(80和443; 443上的SSL解密)从外部访问。如果您需要其他端口,您可能需要使用除了Openshift以外的其他端口。

+0

请注意,我从2017年9月30日关闭的Openshift Online 2的角度回答了这个问题。Openshift Online 3是一个完全不同的系统。 –