chakokuのブログ(rev4)

テック・コミック・DTM・・・ごくまれにチャリ

メモ:AWSのApp RunnerでNode-REDを走らせる案

背景:プログラミング研修の教材を検討中、マイコンとセンサで計測したデータの見える化としてIoT PFを使うか、Node-REDを使う方針
課題:EC2で構築すると、SSL通信時、ドメイン取得して証明書手配が必要。手軽に安く構築、運用したい。
アプローチ:コンテナ化したNode-REDをApp Runner上で走らせてはどうか
進捗:Copilotに質問すると手順を教えてくれた
詳細:

App Runnerによる構築、運用ステップ(ECRベース)
1. Dockerイメージを作成
公式Node-REDイメージ(nodered/node-red)をベースにしてもOK、必要に応じて settings.js や flows.json を含めてカスタマイズ
Dockerfile 例:

FROM nodered/node-red:latest
COPY flows.json /data/flows.json

2. ローカルでビルド

docker build -t node-red-app .

3. ECRリポジトリを作成

aws ecr create-repository --repository-name node-red-app

4. ECRにPush

# 認証
aws ecr get-login-password | docker login --username AWS --password-stdin <your-ecr-uri>
# タグ付け
docker tag node-red-app:latest <your-ecr-uri>/node-red-app:latest
# Push
docker push <your-ecr-uri>/node-red-app:latest

5. App Runnerでサービス作成

上記手順だけでNode-REDコンテナが動いたらすごい。実際には、エラーが出たり、いろいろ予想外のことが起きそうだ。

■追記
最新のMicroPythonではI2Sを扱えるらしい。Raspberry Pico でもI2Sが扱えるなら、DA変換ICを介して音声とか再生できるはず。