MERN Stack

- http://mern.io/documentation.html
MERN はMongoDB, Express, React, NodeJS を組み合わせたスタックです。
Ubuntu 16.04 でMERN を試してみました。
環境
| 項目 | 値 |
|---|---|
| OS | Ubuntu GNOME 16.04 |
| node | v6.3.1 |
サンプルの準備
$ sudo npm install -g mern-cli |
ポートが衝突した場合の対処
npm start を実行したところ、ポート8000 のリッスンに失敗したようなエラーが発生しました。events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::8000
at Object.exports._errnoException (util.js:1012:11)
at exports._exceptionWithHostPort (util.js:1035:20)
at Server._listen2 (net.js:1252:14)
at listen (net.js:1288:10)
at Server.listen (net.js:1384:5)
...
[nodemon] app crashed - waiting for file changes before starting...
確認したところ、2016-07-09 にインストールしたサーバ管理ツールAjenti が使っていました。$ sudo lsof -i:8000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ajenti-pa 4059 root 6u IPv4 30002 0t0 TCP *:8000 (LISTEN)
対策として、8000 ポートの代わりに8888 ポートを使うことにしました。const config = {
mongoURL: process.env.MONGO_URL || 'mongodb://localhost:27017/mern-starter',
port: process.env.PORT || 8888,
};
export default config;
実行
ブラウザでhttp://localhost:8888 にアクセスします。