2014-06-19 39 views
3

我有一個Web應用程序,我試圖推動Heroku,主要依靠調用Octave腳本。對於開發/測試,我正在使用EC2實例和node.js.在EC2實例中,我安裝了Octave。使用八度腳本與Heroku應用程序

然而,當我推到Heroku的,並試圖把這種倍頻腳本(通過Ajax調用),我得到這個錯誤: https://devcenter.heroku.com/articles/error-codes#h13-connection-closed-without-response

我讀到的Heroku在AWS實例上運行,所以我假設它是可能以某種方式調用Octave腳本,因爲我已經在我自己的EC2實例上完成了它。

分散的文檔讓我想到,當我推到Heroku時,我將不得不告訴Heroku安裝Octave,但我不知道如何做到這一點。它會在節點啓動腳本中(如果是這樣,如何)?還是我失蹤的其他東西?

編輯:我想它可能反而必須通過Heroku buildpack完成 - 任何人都可以證實這一點?

編輯2:我想答案是,我需要一個倍頻程buildpack,類似於: https://github.com/virtualstaticvoid/heroku-buildpack-r 但對於八度,而不是R.它看起來像一個不存在的,所以我會盡我的手在做一個自定義buildpack 。

回答

1

是的,你必須使用一個buildpack。我做了一個允許您運行腳本八度:

https://github.com/wclark3/heroku-buildpack-octave-dynare

它還包括Dynare,宏建模軟件包。所以如果你遇到這個答案,你只需要Octave,只需分叉回購,並從bin/compile中取出包含Dynare的行。