heroku で node.js を動か・・・失敗だわー

ぬRuby の時に @volpe_28v さんに heroku で node.js 動かす方法聞かれたの思い出したので、動かし方をまとめておきます!
前に一度やっているのだけど、実のところすっかり忘れてしまっているのですわー


確かその時参考にさせていただいたのはこちら。

必要な手順は次のとおりですよー。
最初は結構 heroku 関連の設定が必要なんですよね。
  • Procfile と package.json の用意
  • heroku のアカウント作成
  • heroku コマンド導入
  • heroku への公開鍵の登録
  • heroku 上にアプリケーション作って push
  • 起動!
結論としては失敗したのでまた今度挑戦します!

Procfile と package.json の用意

こんな感じで Procfile と package.json を用意します。

heroku のアカウント作成

Let's Sign Up!!

heroku コマンド導入

とりあえず gem が必要なので ruby をインストール
rvm とかいろいろあるけどそのあたり詳しくない、かつ Ubuntu なら
sudo apt-get ruby
ふぁいと! gem で heroku をインストールするよ!
gem install heroku

おっけー!

heroku への公開鍵の登録

ssh キーが必要なんで作りましょう
(すみません、忘れました。。。ぐぐってください)

~/.ssh 下に作成できたら
heroku keys:add
 おっけー!

heroku 上にアプリケーションを作って push

まずは Cedar stack にアプリケーション作成
heroku create --stack cedar

次にリポジトリをぶっこむーふぉろみー!
git push heroku master
説明では master を push してるけど実際には herokable ブランチでやってました
起動!
heroku ps:scale web=1


オープン!
heroku open
とっても・・・初期状態です!!
master ブランチに push しないとダメですかねー

git push heroku herokable:master
(ブランチを別のブランチ名で push するなんて初めてつかいました・・・!)

そうそう!こんな感じだった気がするー!!
今度こそオープン!

ヒャッハ・・・ー?
・・・orz

push の時のログ見て気づいたけど・・・
-----> Vendoring node 0.4.7
node のバージョン古いなぁ・・・これが原因だろうか?
dependencies のバージョンを合わせたら動くだろうか・・・今度試すー

いやー、ポート番号の指定の仕方がうんぬんだろうか・・・そんなのもあったような・・・
なにはともあれログを見ないことにはですよねー

人のプロジェクトをブログのネタに使って、あまつさえ失敗するとか!!わーお
(ホントすみません・・・)

コメント

  1. とても興味のある記事ありがとうございます。
    そして私の拙いアプリで題材に使っていただいてこちらも感謝です。

    うまくいかないのはアプリのせいですかねぇ。。。
    確かにポートの設定とか heroku 上ではどうなるのかなと思っていました。

    続きを楽しみにしていますw

    返信削除
  2. > volpe_hd28v さん

    すみません、現在こんな次第でございますー
    port(ローカルでも 80 を指定したら動かなかった・・・なんか使ってたかな) とか socket.io あたりが絡んでるのかなーと考えてました。

    また折を見て再挑戦します!

    返信削除
  3. 僕もやってみたところ、いけました!

    最初は onjiro さんと同じようにエラー画面が出ましたが、heroku logs で見るとPORTがまずいっぽいことが書いてましたので、
    以下を参考に app.js を修正しました。
    http://d.hatena.ne.jp/yosuke_furukawa/20110803/1312361207

    // 接続ポートを設定
    -var port = program.port || 3008;
    +var port = program.port || process.env.PORT || 3000;

    どうやら heroku 側で用意する port 番号で起動しないといけないっぽいですね。

    返信削除
  4. おお!情報ありがとうございます、port 番号の問題でしたかー
    heroku logs は見ていたのですが、見逃していたみたいです。。。

    ともあれ無事に動作したようで、おめでとうございます!

    返信削除

コメントを投稿

このブログの人気の投稿

React で input 要素に focus したい話

PostgreSQLで多次元配列を1次元配列に展開したい

inotify でファイル監視しようず!