我正在尝试安装IPython html notebook server
在dotCloud上。 IPython服务器将龙卷风与websocket一起使用(以及其他内部通信在tcp套接字上使用zeromq)。
这是我的 dotcloud.yml :
www:
type: custom
buildscript: builder
ports:
nbserver: tcp
我正在遵循给定的自定义端口配方here和here。如日志所示,我在
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.com
或my-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员工。