KatacodaでNode-REDの遊び場(Node-RED Playground)つくったメモです。

KatacodaでNode-REDの遊び場(Node-RED Playground)つくったメモです。

Katacodaとは

Katacodaは1時間の使い切りの環境でk8sやDockerのようなコンテナ技術やサーバー系テクノロジーを学ぶにはうってつけの仕組みです。

Katacoda Documentation | Katacoda

image

キャラクターもなんかかっこいいw

この使い切りの挙動はドキュメントの冒頭でも言及されています。

image

How it works?
During the training course, the student will be using a hosted environment that is created just for them. This environment is not shared with other users of the system. Each environment is limited to a one hour session with a new environment will be created when the user reloads the page. This can be customised with our paid-for training platform, please email us for details.

私でも読みやすいさすがの教材サイトの英文という感じで助かりました。翻訳を通してもわかりやすかった。

トレーニングコース中、学生は自分専用に作成されたホスト環境を使用します。この環境は、システムの他のユーザーと共有されません。各環境は1時間のセッションに制限されており、ユーザーがページをリロードすると新しい環境が作成されます。これは、有料のトレーニングプラットフォームでカスタマイズできます。詳細については、メールでお問い合わせください。

ということで、Node-RED Playground つくったメモ

ということで教材はこちらです。Katacodaアカウントを取得してから以下にアクセスします。

Node-RED Playground (ja) by 1ft-seabass | Katacoda

image

こちらでアクセスすれば、構築が始まってすぐにNode-REDを楽しむことができます。

image

このような画面が出た場合は、まだログインしてない or アカウント作ってないので、ログインして入ってみましょう。

実際の流れ

ほぼオートでNode-REDが使えるようになりますし、教材説明でも書かれていますが、

image

Katacodaはホント簡単に外部に公開してくれて挙動を楽しめるだけに、Node-REDのGUIをフルオープンってのはマズイので、ちゃんとログイン画面を表示させ、

  • 外部ログイン時のユーザー名
  • 外部ログイン時のユーザーパスワード

を自動で設定します。詳しい流れは教材の方をご覧ください。

最終的に、外部ログイン時のユーザー名とユーザーパスワードをメモで控えて、node-redコマンドでNode-REDを起動して、Node-REDのURLにアクセスすれば使うことができます。

ふりかえり

苦労した点としては、やはりNode-REDの自動パスワードのところですね。

さくらのクラウドのNode-REDスタートアップスクリプトでパスワード設定も出来るようにしたメモ – 1ft-seabass.jp.MEMO

このあたりの知見をベースにはしたのですが、一筋縄では行かず、

katacoda-scenarios/foreground.sh at master · 1ft-seabass/katacoda-scenarios

shell
sed -i -e "s/\/\/adminAuth:/adminAuth:{\x0A\
        type: \"credentials\",\x0A\
        users: [{\x0A\
            username: \"admin\",\x0A\
            password: \"CLOUD_NODERED_PASSWORD\",\x0A\
            permissions: \"*\"\x0A\
        }]\x0A\
    },\x0A\
    \/\/adminAuth:/" $YOUR_NODERED_SETTING_DIR

Katacodaのシェル処理のクセで改行コードをめっちゃ苦労したのは思い出深いです。このあたりあまり文献がなくて少しシェル力が上がりました。あとは、地道な教材づくりのところ。ここは、実際に生徒の方にやってもらいつつ、改善していきたいなと思っているので、もし機会があればハンズオンもしてみたいなと思っています!

作ってみて気づいたその他のメリットとしては、

  • ブラウザオンリーは学ぶ裾野を広げる
    • Node-REDを楽しんでもらう際にノートPCが社用PCだったりするとローカルインストール無理だと詰むのがセオリー、しかしこの教材だとブラウザなので回避できる
  • Node-REDの最近来た新しい機能が色々あるので、サクッと試すときにうってつけ
    • 2019/09/10現在でも 0.20 台のものが試せる
  • 「一回うまく行った!楽しい!」という成功体験につながりやすい

というのが良いなと思っています。

結構しっくり来ているので、引き続き、こちらの教材を育てていきます!