是否有人成功地在蚊虫上运行免费帐户中的openshift在线版本?
有两个问题是相关的,但并不能真正解决所有的问题:
到目前为止所做的事情:
从这里开始,让蚊子在openshift上运行的确切步骤是什么?
发布于 2016-05-26 05:24:57
最后,我让它使用openshift,尽管使用了最简单的配置。以下是关键步骤:
DIY墨盒获取websocket支持,该支持公开外部端口8000,并在OPENSHIFT_DIY_IP指定的虚拟IP地址上路由到内部端口8080。config.mk中关闭的所有功能编译蚊子,以避免向openshift安装大量软件包:WITH_TLS、WITH_TLS_PSK、WITH_THREADING、WITH_BRIDGE、WITH_SRV、WITH_UUID、WITH_DOCS、WITH_SOCKS。Makefile”,将命令从DOCSDIR中删除。这似乎是蚊虫中的一个小问题,因为如果关闭了WITH_DOCS,就不应该尝试从DOCSDIR安装。WITH_WEBSOCKETS in config.mk。src/webockets.c。在大约625行的函数mosq_websockets_init()中,在info.user = user;行的下面添加一行info.iface = listener->host;。这是为了使蚊子能够绑定到虚拟IP地址的openshift DIY设备。默认情况下,蚊子只允许绑定到0.0.0.0以获取任何IP地址。这似乎是蚊子和libwebosocket之间的脱节。libwebsockets和libwebsockets-devel软件包。make来制造蚊子。../mosrun目录中。创建目录。运行make prefix= DESTDIR=$(pwd)/../mosrun install。../mosrun下的所有文件夹,但sbin除外。cd ../mosrun/sbin和cp /usr/lib/libwebsockets.so.7 ..调整您的股票libwebsockets的源路径。https://github.com/jpmens/simple-mqtt-websocket-example抓取所有文件。将它们放到您的mosrun/sbin/simpleweb目录中。mosrun/sbin/simpleweb/config.js以使用您的openshift DIY域名和端口8000。这里是javascript从浏览器连接到DIY服务器的地方。mosrun/sbin/mosquitto.conf,其中包含四行:listener 8080 <OPENSHIFT_DIY_IP>、protocol websockets、http_dir simpleweb和connection_messages。使用您的实际DIY虚拟IP地址代替<OPENSHIFT_DIY_OP>。.openshift/action_hooks/start和.../stop脚本以注释现有命令。推到openshift。现在,您不应该能够连接到默认服务器,但设备正在运行。mosrun/sbin目录。LD_LIBRARY_PATH=. ./mosquitto -c mosquitto.conf -v启动蚊子。diy-yourdomain.rhcloud.com:8000/index.html。您将看到从jpmen的github复制的mqtt websockets测试页面。下一步是将树移动到DIY git树中。修改开始和停止挂钩,以启动和停止您的蚊子,而不是默认的服务器。并在openshift设备上运行一个脚本,从实际的openshift环境变量创建config.js和mosquitto.conf。
发布于 2020-02-05 22:38:54
为了防止其他人浏览这篇文章,我在OpenShift v3.11:https://github.com/john2exonets/OpenShift-MQTT-Mosquitto上运行了一个非websocket
https://stackoverflow.com/questions/37383603
复制相似问题