• 検索結果がありません。

HARTING Node.js Environment for HAIIC MICA 日本語 HARTING Node.js Environment for HAIIC MICA HARTING IT Software Development Marienwerder Str. 3, E

N/A
N/A
Protected

Academic year: 2021

シェア "HARTING Node.js Environment for HAIIC MICA 日本語 HARTING Node.js Environment for HAIIC MICA HARTING IT Software Development Marienwerder Str. 3, E"

Copied!
9
0
0

読み込み中.... (全文を見る)

全文

(1)

HARTING Node.js Environment for HAIIC MICA

HARTING IT Software Development

Marienwerder Str. 3, 32339 Espelkamp, Germany

Phone: +49 5572 47-97300, Fax: +49 5772 47-482

[email protected]

(2)

Node.js Environment v1.3. for HAIIC MICA Guide

目次

1. NODE.JS ENVIRONMENT CONTAINERベーシック ... 3

1.1. 概要 ... 3 1.2. NODE.JS CONTAINERのインストール ....... 3 2. NODE.JS CONTAINERの説明 ...... 4 2.1. ユーザインターフェースの概要 ..... 4 2.2. NODE.JS アプリケーションスクリプトのアップロード ... 5 2.3. アクティブなNODE.JSアプリケーションスクリプトのダウンロード ... 6 2.4. アプリケーションロガーの使用 ...... 6 3. 使用例 ... 7 3.1. デフォルトアプリケーションのダウンロード ... 7 3.2. アプリケーションの修正 ...... 7 3.3. 修正したアプリケーションの(再)アップロード ... 8 4. NODE.JS コンテナによるサービスの提供 ... 8 4.1. 概要 ... 8 4.2. サービスの利用 ...... 8 5. NODE.JSコンテナの拡張 ... 9

(3)

1.

Node.js environment container ベーシック

1.1.

概要

Node.jsは、Node.js Foundation1によってホストされるオープンソースプロジェクトであり、Linux Foundation2の共同プロジェクトです。 Chrome V8エンジンで構築された軽量のJavaScriptランタイ ムを実装し、イベント駆動型アーキテクチャとリアルタイムWebアプリケーションのアプリケー ションのスループットとスケーラビリティを最適化するために設計されたノンブロッキングI/O API を提供します。 ビルトインライブラリにより、Node.jsアプリケーションはスタンドアロンのWeb サーバとして動作します。 Node.jsプロジェクトは、世界最大のオープンソースライブラリのエコシ ステムを提供すると主張するnpm-package managerによって管理されホストされています。

Node.js環境コンテナは現在、Node.js v6.9.1 LTSに基づいています。 Node.jsおよびNPMの詳細に ついては、 を参照してください。https://nodejs.org/en/と https://www.npmjs.com/

1.2.Node.js container

のインストール

図1: Node.js Environment Containerを含むMICAホーム画面

(4)

kode. s環境コンテナのインストールおよび設定ルーチンは、IIC MICAが提供する標準ルーチンに 従い、“MICA Programming Guide”にあります。

2.

Node.js containerのユーザインターフェース

2.1.

ユーザインターフェース概要

Node.js環境コンテナのユーザインタフェースは、アプリケーションをコンテナにインポート/エ クスポートしてアプリケーションを表示するために使用できるエントリ “Application” およびログ アプリケーションを表示する “Logging” を含む単一のセクション “General” で構成されています。 ユーザインタフェース構造は、以下のように記述することができます: 1.) Application ファイルテキストフィールド: テキストフィールドを使用して、コンテナにアッ プロードする js-applicationスクリプトを設定できます。

2.) Upload: Uploadロードボタンは、 で指定された js-applicationファイルのアップロードを行

います。 1.)

3.) Download: download ボタンは、現在のアクティブな js-application のダウンロードをファイ

ルシステムに関連付けます。

4.) Show Log File: log fileボタンを使用すると、図5に示すようなログウィンドウを入力できます。

(5)

2.2. Node.js

アプリケーションスクリプトのアップロード

図3: Node.js Environmentへのアプリケーションアップロード 新しいアプリケーションをコンテナにアップロードするには、アプリケーションファイルのテ キストフィールド(2.1項を参照)をクリックし、図3のようにjs-applicationスクリプトを選択 するか、ファイルをテキストフィールドにドラッグ&ドロップするだけです 。 ファイルを選択 すると、ファイル名がアプリケーションファイルテキストフィールドに表示されます。 “Upload” ボタンを押すと、選択したファイルがコンテナに送信され、内部に保存されます。 送信が終了すると、図4に示すように、送信が成功したか失敗したかがアプリケーションファイ ルのテキストファイルの右側に表示されます。 ファイル送信が終了しましたらコンテナはさら に置換するアプリケーションを停止しすぐに新しいアプリケーションを開始します。 アップ ロードされたアプリケーションの名前はapp.jsに変更され、コンテナ自体の起動後に自動的に 開始されます。 注意:アップロードに本ユーザインターフェイスを使用すると、一度に1つのアプリケーショ ンしか実行できません。古いアプリケーションは置き換えられ起動されます。ただし、

“MICA Programming Guide”の説明に従って)SSH経由でコンテナにログインし、同時に

(6)

図4: Node.js Environmentへのアプリケーションアップロード成功

2.3.

アクティブなNode.js アプリケーションスクリプトのダウンロード

"download" ボタンをクリックするだけで、現在アクティブなNode.jsスクリプトをダウンロード

できます。 スクリプトをダウンロードしたら、「ワードパッド」(Windows)や「TextEdit」 (OS X )などのシンプルなテキストエディタや「Visual Studio」(Windows)や「X code」 (OS X )などの開発IDEでファイルを開き表示/変更しことができ、2.2項で説明したようにアプ リケーションを再アップロードできます。

2.4.

アプリケーションロガーの使用

アクティブなアプリケーションログファイルは、 “Show Log File” をクリックして、ロガーウィ ンドウ(図5参照)で検査できます。 アプリケーションロガーを使用するには、ログ情報を次の ファイルに書き込む必要があります。

/var/log/nodeapp.log

Node.jsにログ情報を書き込む方法の詳細については、新しいNode.js環境コンテナごとに提供

(7)

図5: Node.js Environment Containerのアプリケーションロガーウィンドウ

3.

使用例

3.1.

デフォルトアプリケーションのダウンロード

この例で最初にやりたいことは、デフォルトの s applicationスクリプトをダウンロードするこ とです。 したがって、ユーザインターフェイスで “download”ボタンをクリックするだけで済み ます。 ダウンロードスクリプトファイルをエディタで開くとスクリプトはポート MMMでリッ スンする簡単なeTTP Webサーバを実装していることがわかります。したがって、ブラウザタ ブを開いて次のアドレスを入力すると“It Works!!”が表示されます。 http://<container-address>:5000 このスクリプトはまた、初期化プロセス中のログをファイル/var/log/nodeapp.logに書き込みま す。“Show Log Files”ボタンをクリックするとこれらのメッセージがロガーウィンドウに表示され ます。

3.2.

アプリケーションの修正

アプリケーションスクリプトをダウンロードした後、 "It Works! !"のテキストを "It still Works!!” に変 更、スクリプトの最後に次の行を追加してスクリプトを修正しダウンロードします。:

(8)

logger.log(‘Wow, that was easy!’); その後、スクリプトを "new_app.js" に保存し、次のセクションで説明するようにスクリプトを (再)アップロードします。

3.3.

修正したアプリケーションの(再)アップロード

この例の最後のステップでは、変更されたアプリケーションをコンテナに再度アップロードし ます。 したがって、アプリケーションファイルのテキストフィールドをクリックし、スクリプ トファイル"new_app.js"を選択し、最後に"Upload"ボタンをクリックします。 ファイルがアップ ロードされた後、再びロガーウィンドウが開き、 “Wow, that was easy!”というメッセージが表 示されます。その後、Webサーバのページ(ポート5000)を更新し、Webサーバの応答メッ セージ "It still Works !!"が表示されます。

4.

Node.js containerによるサービスの提供

4.1.

概要

Node.js環境コンテナを使用すると、HTTPリクエストを介してリモートからユーザインタ フェースが提供する機能にアクセスできます。 したがって、コンテナはIIC MICAホストによっ て提供されたトークンを使用して要求を認証します。 詳細は、“MICA Programming Guide”のセ クション“Single sign-on (SSO)”を参照してください。

4.2.

サービスの利用

次のHTTPリクエストがコンテナによって提供されます。: 1. Upload: js-application スクリプトのアップロード Method: POST URL : appupload?token=XXX 2. Download: 現在のjs-application スクリプトの内容を取得 Method: POST URL : appdownload?token=XXX 3. Log file: アプリケーションログファイルの内容を取得 Method: GET URL : applogfile?token=XXX

(9)

5.

Node.js containerの例

Node.js環境コンテナは、npmエコシステムで利用可能なすべてのオープンソースプロジェクト にアクセスでき、提供されたコマンドラインツールnpmを使用して拡張できます。 SSH経由で コンテナにログインした後、Node.jsコマンドノードと同様にnpmにアクセスできます。 次の行 を入力して、アプリケーションフォルダに移動する必要があります。: cd /opt/nodeapp このフォルダには、バックグラウンドで実行されているapp.jsスクリプトもあります。 新しい npmモジュールをインストールするには、次の行を入力するだけです: npm install <module> インストール(express)したい場合、npm-moduleで<module> を置換します。 新しいnpm-moduleをインストールした後は、js-applicationスクリプト内で<module>コマンド と組み合せて使用できます。 Expressを使用する場合は、アプリケーションに次の行を追加す るだけです。:

var express = require(‘express’);

図 1: Node.js Environment Container を含むMICAホーム画面
図 2: Node.js Environment Container ユーザインターフェース
図 4: Node.js Environment へのアプリケーションアップロード成功
図 5: Node.js Environment Container のアプリケーションロガーウィンドウ 3. 使用例 3.1.  デフォルトアプリケーションのダウンロード この例で最初にやりたいことは、デフォルトの s application スクリプトをダウンロードするこ とです。 したがって、ユーザインターフェイスで  “download” ボタンをクリックするだけで済み ます。 ダウンロードスクリプトファイルをエディタで開くとスクリプトはポート MMM でリッ スンする簡単な eTTP Web サー

参照

関連したドキュメント

Chiang Mai was established as a free state of Lanna Kingdom in 1296 and was annexed to Siam in 1884. The urban area is located between Suthep.. Mountain on the west and

Contrast-enhanced ultrasonography, oral cancer, oropharyngeal cancer, sentinel lymph node, Sonazoid TM , Superb Microvascular

A nearly best-Possible approximation algorithm for node-weighted Steiner trees. Spider covering algorithms for network

For graphs of tree-length bounded by δ , we obtain a routing scheme of deviation 6 δ −2 with addresses and local memories of size O ( δ log 2 n ) bits per node, moreover

By executing the algorithm, each node of the network is assigned a list of temporal intervals, during which the node is accessible from the moving object with the minimum

Lindemann, Unimolecular decay, Slow manifold, Centre manifold, Asymp- totics, Concavity, Isoclines, Differential inequalities, Saddle node.. AMS

In order to obtain a phase portrait of a structurally unstable quadratic vector field of codimension one ∗ from the set (C) it is necessary and sufficient to coalesce a finite

We argue inductively for a tree node that the graph constructed by processing each of the child nodes of that node contains two root vertices and that these roots are available for