「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る --[[Node-RED]] --[[Rasbian]] > [[Docker On Rasbian]] *目次 [#i2059ad2] #contents *概要 [#j4995daa] [[Rasbian]]上に、イケてる[[Node-RED]]環境を構築する。 *詳細 [#q25b40ba] **インストール [#jac30de0] 既定でインストールされている。 **疎通 [#iae8bcf4] ***起動 [#j7107c21] -通常起動 $ node-red -使用するメモリを指定して起動 $ node-red-pi --max-old-space-size=256 ***接続 [#n632d16f] http://{ラズパイのIPアドレス}:1880/ ***Lチカ [#v5c98cd9] [[Apple Pi]]を使うので、GPIO 6を使う。 [ { "id": "b04f4d8.27109b", "type": "tab", "label": "フロー 1", "disabled": false, "info": "" }, { "id": "af2680ad.55fbc", "type": "trigger", "z": "b04f4d8.27109b", "op1": "1", "op2": "0", "op1type": "str", "op2type": "str", "duration": "1000", "extend": false, "units": "ms", "reset": "", "bytopic": "all", "name": "", "x": 380, "y": 100, "wires": [ [ "9f2430cd.ca7c2" ] ] }, { "id": "9f2430cd.ca7c2", "type": "rpi-gpio out", "z": "b04f4d8.27109b", "name": "", "pin": "31", "set": "", "level": "0", "freq": "", "out": "out", "x": 580, "y": 100, "wires": [] }, { "id": "a08e5a7f.768288", "type": "inject", "z": "b04f4d8.27109b", "name": "", "topic": "", "payload": "1", "payloadType": "num", "repeat": "2", "crontab": "", "once": false, "onceDelay": 0.1, "x": 190, "y": 100, "wires": [ [ "af2680ad.55fbc" ] ] } ] -参考 --Raspberry PiのLEDを~ Node-RED を使ってLチカする~ |Tech Blog|日本情報通信株式会社~ https://www.niandc.co.jp/sol/tech/date20151007_514.php --Node-RED と RaspberryPi で Lチカ~ ゲームで楽しく学ぶプログラミング教室~ https://ameblo.jp/gameprograming/entry-12635590359.html --[[ラズパイとNode-REDを使って簡単にLチカ! | 千草ウェブ>https://chigusa-web.com/blog/%E3%83%A9%E3%82%BA%E3%83%91%E3%82%A4%E3%81%A8node-red%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E7%B0%A1%E5%8D%98%E3%81%ABl%E3%83%81%E3%82%AB%EF%BC%81/]] ***LCD [#yb9036ee] ***センサー [#b5b9740d] **自動起動 [#ue68efa0] ***サービス [#a01cd0c2] -自動機能の有効化 sudo systemctl enable nodered.service -自動機能の無効化 sudo systemctl disable nodered.service ***コンテナ [#e675b37b] [[サービス>#a01cd0c2]]の自動起動を設定し、[[コンテナ側も自動起動>Docker On Rasbian#mc4e2186]]を設定する。 **On Docker [#pbd8d55b] (Node-RED On Docker On Rasbian) ***通常通り起動する。 [#r8106202] -[[Docker]]コンテナのNode-REDを動かす。 --arm32v7のタグを指定する。 --永続化のためにホストディレクトリを利用 $ docker run -it -p 1880:1880 -v /home/pi/.node-red:/data nodered/node-red:1.2.0-10-arm32v6 ... docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b974561552fb nodered/node-red:1.2.0-10-arm32v6 "npm start --cache /…" About a minute ago Up About a minute (healthy) 0.0.0.0:1880->1880/tcp nostalgic_saha ※ [[サービスとして自動起動>#a01cd0c2]]するように設定済み。 -再び接続する。 http://{ラズパイのIPアドレス}:1880/ -ラズパイ専用ノードが存在しないことを確認できる。 ***コンテナでLチカを実行 [#ddc36400] -[[Deviceアクセスを有効化して起動>Docker On Rasbian#y031f6c7]] docker run -it -p 1880:1880 -v /home/pi/.node-red:/data --device /dev/gpiomem --privileged nodered/node-red:1.2.0-10-arm32v6 -ラズパイ専用ノードが存在しないので、~ メニューのパレットの管理から、~ node-red-node-pi-gpioをインストールする。 -[[Lチカ>#v5c98cd9]]を作成してデプロイする。 -dataフォルダの中身を配布用に保存しておく。 -...光らない。 -node-red-node-pi-gpiodに変更してみる。 -...光らない。 -[[.NET Core On Docker On Rasbianでは無事動作。>https://techinfoofmicrosofttech.osscons.jp/index.php?.NET%20Core%20On%20Rasbian#l41422bb]] ※ [[.NET Core On Docker On Rasbianでは無事動作。>https://techinfoofmicrosofttech.osscons.jp/index.php?.NET%20Core%20On%20Rasbian#l41422bb]] ***事前にインストールしておく [#hd8de09e] 以下、未検証の内容。 -[[ラズパイ専用ノードをインストールして、Dockerビルドしてイメージを生成する>Node-RED#v1bd1f63]] --Dockerfile FROM nodered/node-red:1.2.0-10-arm32v6 RUN mkdir -p $HOME/.node-red RUN cd $HOME/.node-red RUN npm node-red-node-pi-gpiod ※ ラズパイ専用ノードを動かすため、追加インストールを行っている。 --ビルド $ docker build -t nodered-sample:p1 . -再びコンテナを起動~ [[Deviceアクセスを有効化し>Docker On Rasbian#y031f6c7]]、ヘッドレスで実行する。 docker run -d -p 1880:1880 -v /home/pi/.node-red:/data --device /dev/gpiomem --privileged nodered-sample:p1 -コンテナを[[Docker Hub]]にPushし、~ 別デバイスにdataフォルダを配置して起動...なども出来そう。 *参考 [#m09ee82c] **Node-RED日本ユーザ会 : [#s51672ee] -Raspberry Piで実行する~ https://nodered.jp/docs/getting-started/raspberrypi -Dockerで実行する~ https://nodered.jp/docs/getting-started/docker **Qiita [#w3260070] -ラズパイ用OSに標準インストールされたNode-REDを使ってみる~ https://qiita.com/zuhito/items/0957c5f0df38363740bc -デバイスもクラウドもNode-REDを使ってIoTしてみる~ https://qiita.com/rina0521/items/11c94af291d80174a474 -Raspberry Pi Sense HATをNode-REDで遊んだよ~ https://qiita.com/t_koba/items/e254b8d054729ea3dd0a -【TIPS】Raspberry PiのカメラをNode-REDから使う~ https://qiita.com/rina0521/items/9f4af9465b1c3f91f5e8 -Raspberry PiにおけるNode-REDの活用について~ https://qiita.com/utaani/items/7155c62d6c5e96822afb -DockerコンテナからRaspberryPiのGPIO・I2C・シリアル通信を使う~ https://qiita.com/myasu/items/e3bf8641a9e94dd3e5dd