如何在 openshift 上部署 tornado

How to deploy tornado on openshift

当我通过 ssh 启动 tornado 应用程序时,出现此错误:

Traceback (most recent call last):
  File "/var/lib/openshift/54f9750d4382eca672000091/app-root/runtime/repo//app/ws_server.py", line 111, in <module>
    app.listen(8000)
  File "/var/lib/openshift/54f9750d4382eca672000091/python/virtenv/venv/lib64/python3.3/site-packages/tornado/web.py", line 1691, in listen
    server.listen(port, address)
  File "/var/lib/openshift/54f9750d4382eca672000091/python/virtenv/venv/lib64/python3.3/site-packages/tornado/tcpserver.py", line 125, in listen
    sockets = bind_sockets(port, address=address)
  File "/var/lib/openshift/54f9750d4382eca672000091/python/virtenv/venv/lib64/python3.3/site-packages/tornado/netutil.py", line 145, in bind_sockets
    sock.bind(sockaddr)
PermissionError: [Errno 13] Permission denied

我用 this project 作为例子,但它不起作用:( 我该如何解决这个问题?

如果我这样提供ip:

ip = os.getenv('OPENSHIFT_PYTHON_IP')
port = int(os.getenv('OPENSHIFT_PYTHON_PORT'))
app.listen(port, ip)

我收到其他错误: [Errno 98] 地址已被使用

此外,我想使用共享代码库的 Flask 和 Tornado 部署两个独立的应用程序。

这是因为 openshift 只接受监听 8080 和 15000+ 端口。但是 8080 已经被 WSGI 容器使用,所以我在设置 8080 时已经在使用。如果停止 WSGI 服务器龙卷风将工作。