Websocket 如何在openshift online上运行MOSQUITO mqtt代理
有没有人成功地在计算机上运行 有两个相关的问题,但并不能真正解决所有问题:Websocket 如何在openshift online上运行MOSQUITO mqtt代理,websocket,openshift,mqtt,mosquitto,Websocket,Openshift,Mqtt,Mosquitto,有没有人成功地在计算机上运行 有两个相关的问题,但并不能真正解决所有问题: 。它运行JBoss Fuse,需要服务器上的SNI功能或客户端上的端口转发 。作者提到运行mosquitto,但没有详细说明如何运行 到目前为止已经完成的工作: 我运行了一个PythonWebSocket服务器,从而验证了openshift确实通过DIY盒带很好地支持websocket 我还编译了mosquitcho,并在本地运行它 从这里开始,让mosquitto在openshift上运行的具体步骤是什么 最后
- 。它运行JBoss Fuse,需要服务器上的SNI功能或客户端上的端口转发李>
- 。作者提到运行mosquitto,但没有详细说明如何运行李>
- 我运行了一个PythonWebSocket服务器,从而验证了openshift确实通过DIY盒带很好地支持websocket李>
- 我还编译了mosquitcho,并在本地运行它李>
从这里开始,让mosquitto在openshift上运行的具体步骤是什么 最后我让它在openshift上运行,不过配置最简单。以下是关键步骤:
- 使用openshift
盒带获得websocket支持,该支持公开外部端口DIY
,并路由到内部端口8000
,该端口位于由8080
指定的虚拟IP地址上openshift\u DIY\u IP
- 在
中关闭以下所有功能的情况下编译mosquitto,以避免在openshift中安装大量软件包:config.mk
,使用\u-TLS
,使用\u-TLS\u-PSK
,使用\u-THREADING
,使用\u-SRV
,使用\u-UUID
,使用\u-DOCS
李>使用\u-SOCKS
- 修改mosquitto的
,注释掉要从Makefile
安装的命令。这似乎是MOSQUITO中的一个小错误,因为如果关闭了带有文档的DOCSDIR
打开,则不应尝试从
安装李>DOCSDIR
- 在
中使用_WEBSOCKETSconfig.mk
李>
- 修改文件
。在函数src/webockets.c
的第625行,添加一行mosq\u websockets\u init()
info.iface=listener->host代码>,在
info.user=user的行下方代码>。这是为了让mosquitto能够绑定到openshift DIY设备中的虚拟IP地址。默认情况下,MOSQUITO只允许您为任何IP地址绑定到
。这似乎是mosquitto和libwebosockets之间的断开连接李>0.0.0
- 安装
和libwebsockets
软件包李>libwebsockets-devel
- 运行
构建MOSQUITO李>make
- 假设您要将MOSQUITO安装到
目录。创建目录。运行。/mosrun
李>make prefix=DESTDIR=$(pwd)/../mosrun安装
- 删除
下除。/mosrun
以外的所有文件夹sbin
和cd../mosrun/sbin
。调整库存libwebsockets库的源路径李>cp/usr/lib/libwebsockets.so.7.
- 从
。将它们放入您的https://github.com/jpmens/simple-mqtt-websocket-example
目录中李>mosrun/sbin/simpleweb
- 修改
mosrun/sbin/simpleweb/config.js以使用openshift DIY域名和端口8000。这是javascript从浏览器连接到DIY服务器的地方李>
- 创建一个mosquitto配置文件
,其中包含四行:mosrun/sbin/mosquitto.conf
、listener 8080
、协议websockets
和http_dir simpleweb
。使用实际DIY虚拟IP地址代替连接消息
李>- 将整棵树复制到您的openshift DIY装备中李>
- 使用浏览器从浏览器浏览到您的DIY域,这样您将看到默认的服务器页面李>
- 修改openshift
和.openshift/action\u hooks/start
脚本以注释掉现有命令。按下openshift。现在,您应该无法连接到默认服务器,但设备正在运行李>../stop
- 进入您的mosquito
目录李>mosrun/sbin
- 运行
启动mosquitto李>LD\u库\u路径=/mosquitto-cmosquitto.conf-v
- 浏览你的
。您将看到从jpmen的github repo复制的mqtt websockets测试页面李>diy yourdomain.rhcloud.com:8000/index.html
- 在
config.js
和mosquitto.conf
两个帖子非常有助于指导您完成构建mosquitto的步骤:,和 最后我让它在openshift上运行,不过配置最简单。以下是关键步骤:
- 使用openshift
盒带获得websocket支持,该支持公开外部端口DIY
,并路由到内部端口8000
,该端口位于由8080
指定的虚拟IP地址上openshift\u DIY\u IP
- 在
中关闭以下所有功能的情况下编译mosquitto,以避免在openshift中安装大量软件包:config.mk
,使用\u-TLS
,使用\u-TLS\u-PSK
,使用\u-THREADING
,使用\u-SRV
,使用\u-UUID
,使用\u-DOCS
李>使用\u-SOCKS
- 修改mosquitto的
,注释掉要从Makefile
安装的命令。这似乎是MOSQUITO中的一个小错误,因为如果关闭了带有文档的DOCSDIR
打开,则不应尝试从
安装李>DOCSDIR
- 在
中使用_WEBSOCKETSconfig.mk
李>
- 修改文件
。在函数src/webockets.c
的第625行,添加一行mosq\u websockets\u init()
info.iface=listener->host代码>,在
info.user=user的行下方代码>。这是为了让Mosquetto能够绑定
- 在