2012-08-22 12 views
2

我試圖讓一個nodejs套接字服務器運行,這將允許運行使用自定義協議進行通信的Flash遊戲的兩個客戶端之間的遠程通信。由於Flash安全限制,套接字服務器似乎必須與服務器Flash遊戲的Web服務器在同一主機上運行。我一直在不斷地得到以下錯誤:Dotcloud萬維網和單個應用程序中的TCP -

The service crashed at startup or is listening to the wrong port. It failed to respond on port "nodejs" (8080) within 30 seconds 

我需要的是一種方式來運行我的服務器的NodeJS代碼,同時服務於閃存的文件。

我正在使用環境JSON變量來確定要監聽的端口,我的YML類似於討論的here,但沒有運氣...... 想知道如果我可以獲得有關如何創建工作套接字服務器/網絡服務器,將此項工作(或者如果它實際上是可能的)

回答

4

您可以使用以下dotcloud.yml文件:

www: 
    type: nodejs 
    ports: 
    mything: tcp 

然後在你的Node.js應用程序,你可以綁定一個HTTP服務器端口8080,以及一個任意的TCP服務器到環境變量所包含的端口。然後在您的服務上運行dotcloud info;在ports部分,你會看到這樣的事情:

- name: mything 
    url: tcp://myapp-johndoe.dotcloud.com:12345 

從現在開始,如果你連接到myapp-johndoe.dotcloud.com端口12345,你會真正連接到$PORT_MYTHING在您的應用程序。

我希望它是有道理的,而這正是你所期待的!

+0

這正是我一直在尋找的,謝謝! – blackbourna