#インストール
###1.node
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
再ログイン
$ nvm ls //インストールできるバージョンがリスト表示される
$ nvm install v8.12.0 //nodeインストール
$ nvm use v8.12.0 //使用するnodeバージョン定義
$ nvm alias default v8.12.0 //defaultで使用するバージョン指定
###2.node-red
$ git clone https://github.com/node-red/node-red.git //node-redダウンロード
$ cd node-red
$ npm install //node-redインストール
※installでインストールできない場合
$ npm install -g --unsafe-perm node-red
#ファイヤーウォール設定
####参考コマンド
処理内容 | コマンド |
---|---|
サービスの起動 | systemctl start firewalld.service |
サービスの状態確認 | systemctl status firewalld.service |
サービスの終了 | systemctl stop firewalld.service |
自動起動の設定 | systemctl enable firewalld.service |
アクティブゾーンの確認 | firewall-cmd --get-active-zones |
現在追加されているサービスの確認 | firewall-cmd --list-services --zone=public |
サービスの追加(publicゾーンに対して、httpsを追加する例) | firewall-cmd --add-service=https --zone=public |
サービスの削除 | --remove-service=https --zone=public |
現在追加されているポート番号の確認 | firewall-cmd --list-ports --zone=public |
ポート番号の追加(デフォルトゾーンに対して、TCP8080の例) | firewall-cmd --add-port=8080/tcp --zone=public |
ポート番号の削除 | firewall-cmd --remove-port=8080/tcp --zone=public |
現在追加されているIPアドレスの確認 | firewall-cmd --list-sources --zone=public |
許可アドレスの追加 | firewall-cmd --add-source=192.168.0.0/24 --zone=public |
許可アドレスの削除 | firewall-cmd --remove-source=192.168.11.0/24 --zone=public |
拒否アドレスの追加 | firewall-cmd --add-source=192.168.11.0/24 --zone=drop |
サービス再読み込み | firewall-cmd --reload |
###今回行った設定
$ firewall-cmd --add-service=https --zone=public
$ firewall-cmd --add-service=http --zone=public
$ firewall-cmd --add-port=1880/tcp --zone=public
$ firewall-cmd --add-port=1883/tcp --zone=public
$ firewall-cmd --add-source=192.168.0.0/24 --zone=public
$ firewall-cmd --reload
#node-redのサービス化
###systemdに登録するファイルを作成
vi /etc/systemd/system/node-red.service
###node-red.serviceの編集
[Unit]
After=syslog.target network.target
Documentation=http://nodered.org/
[Service]
Environment="NODE_OPTIONS=--max-old-space-size=128"
Environment="NODE_RED_OPTIONS=-v"
ExecStart=/root/.nvm/versions/node/v8.12.0/bin/node $NODE_OPTIONS /root/.nvm/versions/node/v8.12.0/lib/node_modules/node-red/red.js $NODE_RED_OPTIONS
WorkingDirectory=/root/.node-red/
User=root
Group=root
Nice=10
SyslogIdentifier=Node-RED
StandardOutput=syslog
Restart=on-failure
KillSignal=SIGINT
[Install]
WantedBy=multi-user.target
###サービス再起動
systemctl daemon-reload
systemctl start node-red
systemctl status node-red -l
systemctl enable node-red