如何拥有Node-RED和MQTT的用户实例?

问题描述 投票:0回答:1

我正准备成为高中(理工)机器人技术老师。根据实际情况,可能在明年。

我正在考虑做一个有关物联网的单元,我打算教MQTT和Node-RED。为此,我将使用MQTT和Node-RED创建本地服务器,但是我将需要每个学生一个用户实例并通过密码访问,我不希望他们复制或破坏其他人的工作。

  • 有办法吗?

一点点背景:

[大多数学生可能没有自己的笔记本电脑,学校的计算机可能不足以容纳所有人(我们的教育系统很差,大多数学生都很穷)。提供工作服务器,他们不仅会使用特定的计算机,而且,如果需要支持和检查他们的进度,我可以检查他们的工作。

也许Web服务器(Azure,AWS,Google Cloud ...)更好,更好,因为它们可以在学校外继续工作,或者如果是另一次隔离,但他们是电子学生,他们不了解配置服务器,这超出了课程范围。

  • 您认为最好为每个学生设置一个(Azure,AWS,Google Cloud ...)并自行配置?
mqtt node-red teaching
1个回答
0
投票
http://example.com/user1 http://example.com/user2

您将希望为每个用户在每个容器中装入一个卷,以便持久保存他们的工作,因此您可以使用管理员用户/密码创建settings.js文件,

[建立框架的工作正在进行,可以让您从管理页面执行所有这些操作,并在添加用户时自动创建容器,但是目前无法找到它的链接。在Node-RED forum上询问,也许有人可以找到它。 (编辑:this看起来像我在说的,但一段时间未更新)

对于MQTT,您只需要将一个代理配置为为每个用户要求一个用户名/密码,并为每个用户提供ACL,则仅允许发布/订阅访问以其用户ID为前缀的主题树。例如对于mosquitto,ACL看起来像

user user1 topic readwrite user1/# user user2 topic readwrite user2/#

所有这些都应该在运行Linux的普通台式机上愉快地运行。

您可以在云提供商上运行此程序,但是冒着学生意外超出其提供的免费服务水平的风险,但允许学生在家中而不是仅在学校网络上从事工作。    
© www.soinside.com 2019 - 2024. All rights reserved.