Node + webSocket on dotCloud

Pocket
LINEで送る

dotCloud上でNodejsを使ってみたときのメモ。

まずはアプリケーションの作成(nodechatがアプリ名)

$ dotcloud create nodechat

ビルドファイル(dotcloud.yml)の作成

#dotcloud.yml
www:
  type: nodejs
  approot: chat

packge.jsonはこんな感じ

#packge.json
{
  "name": "nodechat",
  "version": "0.0.0",
  "dependencies": {
    "express": "*",
	"ejs": "*",
    "socket.io": "*"
  },
  "devDependencies": {}
}

続いて、supervisord.confをこんな感じに設定する

#supervisord.conf
[program:node]
command = node server.js
directory = /home/dotcloud/current

最後に、グローバルにインストルしたnpmのモジュールを紐つけます。

$ npm link express ejs socket.io


必要なファイルは以下のように設定されていることを確認

$ tree
nodechat
├── chat
│   ├── server.js (サーバ側)
│   ├── node_modules
│   │   ├── ejs -> /opt/local/lib/node_modules/ejs
│   │   ├── express -> /opt/local/lib/node_modules/express
│   │   └── socket.io -> /opt/local/lib/node_modules/socket.io
│   ├── package.json
│   ├── public
│   │   ├── index.html
│   │   └── javascripts
│   │      └── client.js (クライアント側)
│   └── supervisord.conf
└── dotcloud.yml

最後にPush!

$ dotcloud push nodechat nodechat/

完成かと思ったら、全然ダメでした。
client.jsを次のように修正

var socket = io.connect('http://アプリケーション名-アカウント名.dotcloud.com/');

これで再度Push!
チャットができたっす!

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください