3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

BeagleBone BlackのUbuntu14.04.1にEclipse Orionをインストールする

Last updated at Posted at 2015-02-09

BeagleBone BlackのファームウェアにAngstromを使う場合はデフォルトでWebブラウザ上で動作するIDEのCloud9がインストールされています。前回SDカードのUbuntu14.04.1にNode.jsとnpmをインストールしました。Cloud9の代わりにEclise Orionを使ってみます。OrionはCloud Foundryと連携が強化されIBM DevOps Servicesでも採用されています。

Eclipse Orionのインストール

Node.jsとnpmのバージョンを確認します。

$ node -v
v0.10.25
$ npm -v
1.3.10

CERT_NOT_YET_VALIDのエラーが発生する

orionをnpmでインストールしようとするとCERT_NOT_YET_VALIDエラーが発生しました。

$ npm install orion --production
npm http GET https://registry.npmjs.org/orion
npm http GET https://registry.npmjs.org/orion
npm http GET https://registry.npmjs.org/orion
npm ERR! Error: CERT_NOT_YET_VALID
npm ERR!     at SecurePair.<anonymous> (tls.js:1370:32)
npm ERR!     at SecurePair.EventEmitter.emit (events.js:92:17)
...

ntpdateで時間をあわせる

CERT_NOT_YET_VALIDのエラーは時間がずれていると発生するようです。BeagleBone Blackはバッテリを搭載していないため、電源を入れていないとシステムクロックがずれてしまいます。ntpdateをしてシステムクロックの時間をあわせます。

$ sudo ntpdate -b -s -u pool.ntp.org

インストールと起動

インストールし直します。

$ npm install orion --production

npm startでOrionサーバーを起動します。

$ npm start orion

> orion@0.0.34 start /home/ubuntu/node_modules/orion
> node server.js

Could not find npm in the following locations:
/usr/bin/../lib/node_modules/npm/bin/npm-cli.js
/usr/bin/./node_modules/npm/bin/npm-cli.js
Please add or modify the npm_path in the orion.conf file and restart the server.

Using workspace: /home/ubuntu/node_modules/orion/.workspace
Listening on port 8081...

ブラウザでOrionの起動を確認します。

eclipse-orion-start.png

Orionをデモナイズ

一度Orionのプロセスを停止します。pm2にアプリを登録するスクリプトを実行します。

~/pm2_orion.sh
#!/bin/bash
read -d '' my_json <<_EOF_
{
  "name"       : "orion",
  "script"     : "/home/ubuntu/node_modules/orion/server.js"
}
_EOF_

echo $my_json | pm2 start -

pm2を開始してから、Cloud9を起動します。

$ chmod u+x pm2_orion.sh
$ ./pm2_orion.sh
[PM2] Process launched
┌──────────┬────┬──────┬──────┬────────┬───────────┬────────┬────────────┬──────────┐
│ App name │ id │ mode │ PID  │ status │ restarted │ uptime │     memory │ watching │
├──────────┼────┼──────┼──────┼────────┼───────────┼────────┼────────────┼──────────┤
│ orion    │ 1  │ fork │ 1898 │ online │         0 │ 0s     │ 4.117 MB   │ disabled │
└──────────┴────┴──────┴──────┴────────┴───────────┴────────┴────────────┴──────────┘
 Use `pm2 info <id|name>` to get more details about an app

OS再起動後もpm2に登録したプロセスが起動するようにinitスクリプトを作成します。

$ sudo pm2 startup ubuntu -u ubuntu
$ sudo /etc/init.d/pm2-init.sh restart

すでにinitスクリプトを作成している場合は、OS再起動後のためにプロセスをsaveします。

$ sudo pm2 save
[PM2] Dumping processes

hello world

Editor画面

簡単なNode.jsのスクリプトを作成して実行してみます。

Editorから「hello」フォルダを作成します。

  • File > New > Folder > hello

helloフォルダを選択し、「world.js」ファイルを作成します。

  • New > File > world.js

console.logのコードを書くと警告が表示されました。

console-is-undefined.png

world.js
console.log("hello world");

OrionはJavaScriptのバリデーションと文法チェックにESLintを採用しています。画面のガイドにしたがって、eslint-envディレクティブを追加します。

world.js
/*eslint-env node */
console.log("hello world");

Shell画面

左メニューからShellを選択します。画面下のコンソールから作成したスクリプトを実行します。

» node start hello.js

hello-world.png

3
2
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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?