我正在尝试安装IPython html notebook server
在dotCloud上。 IPython服务器将龙卷风与websocket一起使用(以及其他内部通信在tcp套接字上使用zeromq)。

这是我的 dotcloud.yml :

www:
    type: custom
    buildscript: builder
    ports:
       nbserver: tcp

我正在遵循给定的自定义端口配方herehere。如日志所示,我在127.0.0.1:$DOTCLOUD_WWW_NBSERVER_PORT上运行龙卷风服务器:

/var/log/supervisor/www.log :

[NotebookApp] IPython Notebook运行于:'http://127.0.0.1:35928/'
[NotebookApp]使用Control-C停止该服务器并关闭所有内核。

但是当我推送时,dotCloud CLI告诉我:

警告:服务在启动时崩溃或正在侦听错误的端口。在30秒内未能响应端口“nbserver”(42801)。请检查应用程序日志。
...
部署完成。您的应用程序可通过以下URL获得
找不到网址。没关系,这意味着您的应用程序不包含Web服务。”
my-app.dotcloud.commy-app.dotcloud.com:DOTCLOUD_WWW_NBSERVER_PORT上没有任何内容

我在这里想念什么?谢谢你的帮助。

更新

问题已解决。常规的HTTP端口与websocket配合良好,因此不需要自定义端口配方。这是我的新 dotcloud.yml :
www:
 type: custom
 buildscript: builder
 ports:
   web: http

ipython_notebook_config.py中的以下内容一起使用:
 c.NotebookApp.ip = '*'

这样一来,龙卷风Web服务器就会侦听所有IP地址。

警告:首先设置安全性和身份验证!

有关更多信息,请参见Running a Public Notebook Server

最佳答案

真高兴你做到了!

将来,对于其他读者来说,您实际上是希望您的应用程序监听$PORT_NBSERVER,然后通过DOTCLOUD_WWW_NBSERVER_PORT连接到它。 $PORT_NBSERVER是本地端口,而后者是通过我们的路由/ NAT层暴露给外界的端口。

如果您还有其他问题,请随时通过http://support.dotcloud.com与我们联系。

资料来源:我是dotCloud员工。

10-07 22:25