windows 远程桌面连接centos服务器_Docker部署(Windows运行Coolpy7开源单机千万级连接MQTT服务器)...

Coolpy7内核由于使用Epoll技术,所以系统默认支持Linux或MacOS等基于unix内核的操作系统,因此如需要在windows系统中运行Coolpy7需要通过Docker技术进行虚拟化环境部署。因此本手册只说明如何在windows10中通过docker容器技术部署运行Coolpy7,理论上所有Windows系统只要能正常安装docker都可正常使用本说明

安装docker到win10

https://hub.docker.com/editions/community/docker-ce-desktop-windows

1.正确安装Docker到系统

确保docker正常启动,确保docker容器类型为linux containers(一般安装完成后默认即是)

2.下载Coolpy7镜像

打开一个新的cmd命令行模式,执行以下指令

//拉取镜像文件到本地$ docker pull coolpy7/coolpy7_core:v7.2.0.4
c7f5d65d84982d0cb8ce7303693e0108.png

docker pull 指令

//查看镜像是否拉取完成$ docker images
7f1748be981eb68a06b9b859e725a9aa.png

docker images 指令确认coolpy7_core镜像存在

在主系统d盘创建data文件夹为共享硬盘给Coolpy7内核使用,用于Coolpy7内核的持久化MQTT消息,用户Session、订阅主题等。同时可以确保镜像更新后原有的持久化数据不丢失。

//创建d盘data文件夹$ mkdir d:data

使用docker run指令启动Coolpy7镜像

//p参数指定容器内部1883端口影射到主系统1883端口//v参数指明挂载容器/data文件夹到主系统的d:/data文件夹$ docker run -p 1883:1883 --restart=always -d --name cp7 -v d:/data:/data coolpy7/coolpy7_core:v7.2.0.4

指令执行过程中docker会在右下角出现Share drive提问框,需要点击Share it按扭允许共享d盘data文件夹给docker操作。

e7ec26b1c4841acae01c9c094f985175.png

docker run 指令启动Coolpy7

76370e5ceac43f3edd6202bfe54fc4ac.png

通过ps指令确认Coolpy7镜像已运行

至此基于Docker的Coolpy7已正常启动,我们可以通过连接到宿主的1883端口进行MQTT客户端连接测试,在本测试环境中docker主系统的内网ip为192.168.31.221

50bc24666c5ef5ae0c6e8570a9df9074.png

使用谷歌浏览器MQTTLens客户端工具测试连接到Coolpy7Docker所在IP

327dd0034a05459f67d92f48797a49b8.png

连接成功后测试订阅及消息通信功能

3.通过docker run传递启动参数到coolpy7内核

docker run 指令模式支持给镜像主程序传递参数,指令格式只需在镜像名后编写参数即可生效。

//请注意结尾部分与原来指令的差异//-dt和-it两个参数为传递给coolpy7内核参数//更多coolpy7内核参数请参阅《启动参数及内核特殊功能》章节$ docker run -p 1883:1883 --restart=always -d --name cp7 -v d:/data:/data coolpy7/coolpy7_core:v7.2.0.4 -dt 100 -it 200

4.启动Coolpy7 Websocket Poxy代理服务器docker镜像

当Coolpy7内核运行后我们如果需要提供MQTT的Websocket能力,Websocket技术提供了网页高性能即时通信能力,通过此功能一般可以实现网页即时聊天应用或网页消息推送技术。Coolpy7工具链提供了Websocket代理服务器,名为coolpy7_ws_poxy,同样也已经提供了docker镜像,以下为整个启动过程,由于内核所在的已运行镜像在IP:192.168.31.221:1883,因此我们在启动coolpy7_ws_poxy时需要在docker run 指令传递-r参数到应用程序。

//拉取coolpy7 websocket 镜像$ docker pull coolpy7/coolpy7_ws_poxy//启动镜像 //r参数为告知coolpy7_ws_poxy主服务位于192.168.31.221:1883$ docker run -p 8083:8083 --restart=always -d --name cp7_ws coolpy7/coolpy7_ws_poxy -r 192.168.31.221:1883

同样使用MQTTLens工具连接时改用ws://方式连接到coolpy7_ws_poxy主系统的8083端口即可,测试镜像是否已经正常提供功能,由于此代理服务是桥接到Coolpy7内核,所以启动顺序应尽量先启动Coolpy7内核成功后再启动Coolpy7_ws_poxy服务。

5.编译Docker镜像

本章两个镜像均使用Dcokerfile进行镜像打包,开源位于https://github.com/Coolpy7/Coolpy7/blob/master/Dockerfile

如需自行编译Docker镜像请参阅

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值