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!
チャットができたっす!