LoginSignup
18
19

More than 5 years have passed since last update.

Node+Expressで最速でWebサービスのセットアップ

Last updated at Posted at 2013-03-20

下記、作業用備忘です。もし、間違いあれば指摘・コメント頂けるとありがたいです。

対象

・サーバーの設定とかめんどくさい、手早く基盤を構築して、アプリ開発したい人
・サーバーサイド言語をいちいち覚えたくない人(JS大好きな人)
・将来的には、Websocketとか使って先進的なサービスを企む人

事前準備 (以下、全てMac環境前提にしてます)

下記がインストールされていること

npm
node
express
(npm install -g express でインストールしましょう)
heroku tool belt
git
herokuのアカウント作成

ローカル環境構築

・不安症の人は、インストールとバージョン確認(省略可)してから。。。

node -v
npm -v
express --version   
heroku --version
git --version

・プロジェクトの作成(アプリひな形の作成) ※下記のsampleはアプリ名

//アプリひな形の作成
// -eはejsを使う場合。jadeを使う場合は-eはなくてOK
express sample -e
//作成されたプロジェクトフォルダに移動
cd sample

※プロジェクトフォルダに作成されたpackage.jsonの編集。package.jsonは追加したいパッケージ(モジュール)をjson形式で記述。後からでも追加は出来るので、まずは、なにも変更しなくてOK

//パッケージのインストール
sudo npm install
//Nodeサーバーの起動
node app.js

・ブラウザで以下にアクセスして「Welcome to Express」が出ていればOK
http://localhost:3000/

heroku環境構築

//プロジェクトルート直下(Package.jsonがあるフォルダ)で下記実行

//herokuにアプリを作成(sampleはアプリ名)
heroku create sample
//成功すると アプリURLとgitURLが表示される(後々使います)
http://sample.herokuapp.com/ | git@heroku.com:sample.git

Procfileの作成
(下記一行のファイルを作成する。herokuにこれから登録するアプリケーションの種類を教えてあげます)

web: node app.js

※Profileじゃないよ。大文字小文字に注意、間違えると修正が少し面倒

.gitignoreの作成
(下記の2行のファイル。先頭のドットは必須)
※ モジュールはheroku側で別途インストールされるので、gitのpush対象外としてモジュールフォルダを設定します

node_modules
.DS_Store

・Package.jsonにenginesの追加

Package.json
{
  "name": "application-name",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "node app"
  },
  "dependencies": {
    "express": "3.1.0",
    "jade": "*"
  },
  "engines": {
      "node": "0.8.4",
      "npm": "1.1.49"
  }
}

※ 後続のherokuへpushするときにモジュールの追加が上手くいかない場合、engines、dependenciesのバージョンの組み合わせに注意する(herokuで使用できるバージョンは公式サイトより参照可)

・Gitに登録する

git init
git add .
git commit -m "initial commit"

//git remoteは最初の一回だけ 
git remote add heroku git@heroku.com:sample.git

git push heroku master

・後はローカルでソースいじって変更したら、以下だけでデプロイ完了

$ git add .
$ git commit -m "modify hoge"
$ git push heroku master

・ブラウザで以下にアクセスして「Welcome to Express」が出ていればOK
http://sample.herokuapp.com/
※上記URLはダミー。

トラブルシューティング

偉人の知恵をお借りします。

・herokuのpushするとこでkeyなんちゃらエラーが出た場合
http://tacamy.hatenablog.com/entry/2013/02/16/235127

18
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
19