読者です 読者をやめる 読者になる 読者になる

ポーカー、プログラミング、もぐ

ポーカーとプログラミングともぐもぐについてのブログ。

Node.js + PostgreSQLを使ってアプリケーションを作る(2) Hello World

目次

1, 環境構築

2, Hello World <- 今回

今回やること

必要なパッケージをnpmを使用してインストールし、Hello World (npmはNode.jsインストール時に同時にインストールされている)

手順

$ mkdir node-myapp && cd node-myapp
  • 2, npm initを実行 npm initは、対話的にNode.jsのプロジェクトの初期設定をし、package.jsonにその設定を書き込みます。 npmはNode.jsのパッケージ管理ツールで、package.jsonはその設定ファイルです。 別の環境でプロジェクトを開始するときも、package.jsonがあれば依存しているパッケージを簡単にインストールすることができます。 entry pointを変更していることに注意してください。
$ npm init
name: (node-myapp) 
version: (1.0.0) 0.0.1
description: sample node app
entry point: (index.js) app.js
test command: 
git repository: 
keywords: 
author: 
license: (ISC) 
About to write to /home/nodeuser/node-myapp/package.json:

{
  "name": "node-myapp",
  "version": "0.0.1",
  "description": "sample node app",
  "main": "app.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}


Is this ok? (yes) yes

これでpackage.jsonが作成されました。

  • 3, 必要なパッケージをインストール npmを使って必要なパッケージをインストールします。 このとき、--saveオプションや--save-devオプションを利用すると、インストールと同時にpackage.jsonにパッケージを追加してくれます。
$ npm install --save express
$ npm install --save-dev node-dev

今回はNode.jsのフレームワークであるExpressと、開発用のnode-devパッケージ(ファイルの変更を検知したら自動でプログラムを再起動してくれる)を追加しました。

var express = require('express');
var app = express();

app.get('/', function (req, res) {
  res.send('Hello World!');
});

app.listen(3000, function () {
  console.log('Example app listening on port 3000!');
});

保存したら、

$ ./node_modules/node-dev/bin/node-dev app.js

でアプリケーションを実行します。

$ curl http://localhost:3000

とすると、「Hello World!」と表示されます。

  • 5, ホストマシンからアクセス ホストマシンからゲストマシン上のアプリケーションにアクセスするには、ポートフォワーディングの設定を行う必要があります。 Vagrantfileに
config.vm.network :forwarded_port, guest: 3000, host: 3000

を追加し、

vagrant reload

を実行します。 その後、ゲストマシン内でアプリケーションを実行してから、 http://127.0.0.1:3000/にアクセスして確認します。

ここまでのコードは

github.com

に公開してあります。