appsodyでNode-REDが使える様になったらしい。
appsodyでNode-REDが利用可能になったというアナウンスがありました!
🙌 Newly Available🙌 @NodeRED stack is now available in @appsodydev! #CloudNative #Nodejs #NodeRED #javascript #Java #OpenSource https://t.co/XZz27Y1h4J
— Kabanero (@KabaneroIO) December 11, 2019
先日の、Kabanero(Knative + Istio + Tekton ひとまとめ)を使ってNode.jsのアプリケーションを5分でK8sにデプロイするを書いた勢いもあったので、ついでにこれも触ってみました。
※環境はmac
。docker for macでKubernetesが有効であることが前提です。
Node-REDを使うための手順
appsodyをインストール(または最新にアップデートする。)
インストール手順はこちら
アップデートは
brew upgrade appsody
でOK。
インストールまたは、アップデート後に
appsody list
を実行すると、Node-RED
が追加されていることが確認できます!
$ appsody list
REPO ID VERSION TEMPLATES DESCRIPTION
experimental java-spring-boot2-liberty 0.1.11 *default Spring Boot on Open Liberty & OpenJ9 using Maven
experimental nodejs-functions 0.1.6 *simple Serverless runtime for Node.js functions
experimental quarkus 0.2.2 *default Quarkus runtime for running Java applications
experimental rocket 0.1.0 *simple Rocket web framework for Rust
experimental rust 0.1.4 *simple Runtime for Rust applications
experimental vertx 0.1.4 *default Eclipse Vert.x runtime for running Java applications
*incubator java-microprofile 0.2.21 *default Eclipse MicroProfile on Open Liberty & OpenJ9 using Maven
*incubator java-spring-boot2 0.3.19 *default, kotlin Spring Boot using OpenJ9 and Maven
*incubator kitura 0.2.3 *default Runtime for Kitura applications
*incubator node-red 0.1.0 *simple Node-RED runtime for running flows
*incubator nodejs 0.3.0 *simple Runtime for Node.js applications
*incubator nodejs-express 0.2.10 scaffold, *simple Express web framework for Node.js
*incubator nodejs-loopback 0.1.8 *scaffold LoopBack 4 API Framework for Node.js
*incubator python-flask 0.1.6 *simple Flask web Framework for Python
*incubator starter 0.1.1 *simple Runnable starter stack, copy to create a new stack
*incubator swift 0.2.3 *simple Appsody runtime for Swift applications
あとはGitHubリポジトリを参照しながら作業。
Templateを展開する。
適当なディレクトリの配下で下記のコマンドを実行しましょう。
appsody init node-red
ちなみに、
appsody init node-red none
の様にnone
を指定すると、.appsody-config.yaml
のみが生成される様です。
下記の様なファイルが生成されます。

実行する
ローカルで簡単に実行するためには
appsody run
を実行します。
http://localhost:3000
で下記の画面が確認できればOKです。
フローエディタはhttp://localhost:3000/admin
から確認可能です。
K8sにデプロイする。
前回と同様に
appsody deploy
でOKです。
最終行に表示されるURLからアクセス可能です。(この場合はhttp://localhost:31069
)
Deployed project running at http://localhost:31069
Podを見てみる。
$ kubectl get pod
NAME READY STATUS RESTARTS AGE
appsody-appsody-65b456946-mczpr 1/1 Running 18 5d20h
appsody-operator-57b94c7c48-tsswv 1/1 Running 15 5d20h
my-nodered-project-55db6d8bcc-c6k2z 1/1 Running 0 63s
バッチリ、podがあるのが確認できますね!
あとは、いつも通りにNode-REDを使っていきましょう!