前回の記事でAzure Web AppsへのNode-REDのデプロイ(展開)に失敗した話を書きましたが、
今回はAzure上のLinux仮想マシンにNode-REDを構築してみたので、その備忘録。
2015年6月の上表ですが、Azureで動作保証されているLinuxのディストリビューションは
以下のページに記載があります。
Azure での動作保証済み Linux ディストリビューション
今回はOpenLogicが提供しているCentOS 7.1で仮想マシンを作成。
仮想マシンのデプロイが完了したら、SSH経由でリモートログインします。
まずはNode.jsのインストールを実施。コマンドは以下のような感じ。
sudo yum install epel-release
sudo yum install nodejs npm --enablerepo=epel
途中確認メッセージが表示されるので、都度「y」を入力します。
続いてNode-REDのインストール。
sudo npm install -g node-red
Node-REDはデフォルトでポート1880番を使用するので、
Azure 仮想マシンのネットワークセキュリティグループで
ポート1880番の通信を許可するようにしてください。
SSH経由で、コンソールに以下のコマンドを入力すれば、Node-REDが起動します。
sudo Node-RED
ブラウザで、http://(仮想マシンのIPアドレス):1880と入力すると、
Node-REDにアクセスできます。
ただ、このままだと、ブラウザでアクセス時にエラーメッセージが表示されたり、
デバッグ出力がDebugタブに表示されない現象が発生しました。
Webなどで調べたところ、WebSocketの通信がうまくいっていない模様。
⇒結果、デバッグ出力の出力先タブとの通信もうまくいかない。
これは、setting.jsを編集して、httpsでの通信に切り替えると解決するらしい。
ということで(?)、最後に自己証明書を作成し、
それを使用する設定をsettings.jsに書き込んで、
Node-REDを再起動すると、エラーが出なくなり、ちゃんとデバッグ出力が表示されるようになります。
今回はAzure上のLinux仮想マシンにNode-REDを構築してみたので、その備忘録。
2015年6月の上表ですが、Azureで動作保証されているLinuxのディストリビューションは
以下のページに記載があります。
Azure での動作保証済み Linux ディストリビューション
今回はOpenLogicが提供しているCentOS 7.1で仮想マシンを作成。
仮想マシンのデプロイが完了したら、SSH経由でリモートログインします。
まずはNode.jsのインストールを実施。コマンドは以下のような感じ。
sudo yum install epel-release
sudo yum install nodejs npm --enablerepo=epel
途中確認メッセージが表示されるので、都度「y」を入力します。
続いてNode-REDのインストール。
sudo npm install -g node-red
Node-REDはデフォルトでポート1880番を使用するので、
Azure 仮想マシンのネットワークセキュリティグループで
ポート1880番の通信を許可するようにしてください。
SSH経由で、コンソールに以下のコマンドを入力すれば、Node-REDが起動します。
sudo Node-RED
ブラウザで、http://(仮想マシンのIPアドレス):1880と入力すると、
Node-REDにアクセスできます。
ただ、このままだと、ブラウザでアクセス時にエラーメッセージが表示されたり、
デバッグ出力がDebugタブに表示されない現象が発生しました。
Webなどで調べたところ、WebSocketの通信がうまくいっていない模様。
⇒結果、デバッグ出力の出力先タブとの通信もうまくいかない。
これは、setting.jsを編集して、httpsでの通信に切り替えると解決するらしい。
ということで(?)、最後に自己証明書を作成し、
それを使用する設定をsettings.jsに書き込んで、
Node-REDを再起動すると、エラーが出なくなり、ちゃんとデバッグ出力が表示されるようになります。