Armadillo Base OSで、コンテナ間をネットワーク通信する例として、ここではMQTTを使ってみます。
下記ブログでMQTT通信を行うコンテナ例がありますが、
これらのブログの例は、Armadilloの外部のネットワーク機器とのMQTT通信を想定し、
MQTTブローカーのホスト名を「ArmadilloのIPアドレス」に設定しています。
Armadillo Base OS:MQTTブローカーが動くコンテナを作成(ABOSDEで作成)
Armadillo Base OS:MQTTでパブリッシュするコンテナ例(ABOSDEで作成)
Armadillo Base OS:MQTTでサブスクライブするコンテナ例(ABOSDEで作成)
Armadillo Base OS:MQTTブローカー兼サブスクライバーが動くコンテナ例(ABOSDEで作成)
Armadillo Base OSのコンテナ間で、MQTT通信する場合は、
MQTTブローカーのホスト名を「MQTTブローカーのコンテナ名」にします。
ここでは、上記ブログをベースに下記の2つの例で動かします。
3つのコンテナ(MQTTブローカー、MQTTサブスクライバー、MQTTパブリッシャー)間で通信する場合
2つのコンテナ(MQTTブローカー兼MQTTサブスクライバー、MQTTパブリッシャー)間で通信する場合
3つのコンテナ(MQTTブローカー、MQTTサブスクライバー、MQTTパブリッシャー)間で通信する場合
MQTTブローカーの作成
Armadillo Base OS:MQTTブローカーが動くコンテナを作成(ABOSDEで作成)
の手順を最後まで実行し、「mqtt_br」コンテナを動かします。
MQTTパブリッシャーの作成
Armadillo Base OS:MQTTでパブリッシュするコンテナ例(ABOSDEで作成)
の手順で「mqtt_pub」コンテナを作成します。
「手順2. MQTTでパブリッシュするコンテナ作成」のmain.shの4行目
MQTT_HOST="192.168.1.10"
の箇所を、下記のようにMQTTブローカーのコンテナ名「mqtt_br」に変更します。
MQTT_HOST="mqtt_br"
以降の手順を最後まで実行し、「mqtt_pub」を動かします。
「手順3. 動作確認」パブリッシュしたメッセージの確認方法で、
パブリッシュしているメッセージ(このブログでは日付)を確認します。
MQTTサブスクライバーの作成
Armadillo Base OS:MQTTでサブスクライブするコンテナ例(ABOSDEで作成)
の手順で「mqtt_sub」コンテナを作成します。
「手順2. MQTTでサブスクライブするコンテナ作成」のmain.shの4行目
MQTT_HOST="192.168.1.10"
の箇所を、下記のようにMQTTブローカーのコンテナ名「mqtt_br」に変更します。
MQTT_HOST="mqtt_br"
以降の手順を最後まで実行し、「mqtt_sub」を動かします。
「手順3. 動作確認」サブスクライブしたメッセージの確認方法で、
サブスクライブしたメッセージ(このブログでは日付)が確認できます。
2つのコンテナ(MQTTブローカー兼MQTTサブスクライバー、MQTTパブリッシャー)間で通信する場合
MQTTパブリッシャーの作成
Armadillo Base OS:MQTTでパブリッシュするコンテナ例(ABOSDEで作成)
の手順で「mqtt_pub」コンテナを作成します。
「手順2. MQTTでパブリッシュするコンテナ作成」のmain.shの4行目
MQTT_HOST="192.168.1.10"
の箇所を、後述で作成するMQTTブローカー兼MQTTサブスクライバーのコンテナ名「mqtt_brsub」に変更します。
MQTT_HOST="mqtt_brsub"
以降の手順を最後まで実行し、「mqtt_pub」を動かします。
「手順3. 動作確認」パブリッシュしたメッセージの確認方法で、
パブリッシュしているメッセージ(このブログでは日付)を確認します。
MQTTブローカー兼MQTTサブスクライバーの作成
Armadillo Base OS:MQTTブローカー兼サブスクライバーが動くコンテナ例(ABOSDEで作成)
の手順を最後まで実行し、「mqtt_brsub」コンテナを動かします。
「手順3. 動作確認」サブスクライブしたメッセージの確認方法で、
サブスクライブしたメッセージ(このブログでは日付)が確認できます。