LoginSignup
3
1

More than 1 year has passed since last update.

Play with DockerでNode-REDを動かしてみた。

Last updated at Posted at 2022-05-08

はじめに

DockerでNode-REDを実行する方法については公式ドキュメントに記載されています。

Play with Dockerはブラウザで使える無料のDocker実行環境で、PCにDockerをインストールする必要がありません。

Play with DockerでNode-REDを動かしてみました。

スクリーンショット 2022-05-08 21.15.25.png

メリット

ブラウザだけで使える

制限時間は4時間

他のサービス(ソフトウェアエンジニア向けのインタラクティブな学習およびトレーニングプラットフォームを提供するKatacoda環境)では制限時間が1時間です。
タイマーが表示されて見やすいです。

image_0.jpg

ポートが使える

Node-REDは標準ではポート番号1880を使用します。
リンクからNode-REDフローを開くことができます。

image_1.jpg

sshが使える

Play with Docker環境へsshでログインすることができます。

例.

$ ssh ip172-18-0-81-c9rqius33d5g00b2othg@direct.labs.play-with-docker.com

scpでflows.jsonファイルなどをコピー(バックアップ)することができます。

例.

$ scp ip172-18-0-81-c9rqius33d5g00b2othg@direct.labs.play-with-docker.com:.node-red/flows.json ./

image_2.jpg

gitコマンドが使える

Githubから必要なファイルをcloneできます。

利用方法

Docker Hubアカウントの作成

Docker HubでDocker ID(アカウント)を作成します。

ログイン

Play with Dockerのサイトへアクセスします。

Loginボタンを押します。
Docker ID(アカウント)でログインします。

Screenshot 2022-05-08 at 20-43-51 Play with Docker.png

Play with Dockerの開始

Startボタンを押します。

Screenshot 2022-05-08 at 20-38-52 Play with Docker.png

Node-REDの起動方法

.node-redディレクトリの作成と書き込み権限の変更

$ mkdir .node-red
$ chmod 777 .node-red

Node-REDの起動

$ docker run -d -p 1880:1880 -v /root/.node-red:/data nodered/node-red:latest

MQTTを動かす方法 (TIPS)

Node-REDでMQTTを動かす場合、docker起動時にポート番号1883を追加で設定します。

$ docker run -d -p 1880:1880 -p 1883:1883 -v /root/.node-red:/data nodered/node-red:latest

スクリーンショット 2022-05-08 21.19.20.png

Play with Docker内でMQTTを試す

mosquittoパッケージをインストールします。

$ apk update
$ apk upgrade
$ apk add mosquitto
$ apk add mosquitto-clients

mosquitto_pubコマンド(publish)でメッセージを送ります。

$ mosquitto_pub -h localhost -p 1883 -t test/test -m hello

スクリーンショット 2022-05-08 21.37.04.png

外部からMQTTを試す

ブラウザ上のポート番号1883はHTTPアクセスになってしまうため、直接ポート番号1883へアクセスする方法が見つかりませんでした。
ngrokコマンドを使用して外部からMQTT接続できました。

$ wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
$ unzip *.zip
$ ./ngrok authtoken [アクセストークン]
$ ./ngrok tcp 1883

スクリーンショット 2022-05-08 21.45.27.png

$ mosquitto_pub -h 6.tcp.ngrok.io -p 13119 -t test/test -m hello

セッションの終了

使い終わったらセッションを終了させます。

image_10.jpg

image_11.jpg

さいごに

良きNode-REDライフを!

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