Python:Mac 下 MQTT 服务器 Mosquitto 的配置
我在Mac电脑上搭建时遇到了一些不同于网上大部分情况的问题,特此分享给可能也有遇到相同情况又找不到解决方法的人。
我的电脑系统:macOS Mojave 10.14.3。
paho-mqtt 的安装
首先,需要下载 paho-mqtt 模块(也有很多别的 mqtt 模块,在 pypi.org 网站上可以搜索到,但我感觉这个模块的相关资料全一些) ,直接运行 pip install paho-mqtt 即可安装,不过根据官网提示,我选择在 virtualenv 中运行。【1】我运行的指令如下:
virtualenv paho-mqtt
source paho-mqtt/bin/activate
pip install paho-mqtt
git clone https://github.com/eclipse/paho.mqtt.python
cd paho.mqtt.python
python setup.py install
注意:以后再运行时都需要先执行 source paho-mqtt/bin/activate ,正常情况下如下图所示。

mqtt 代理(broker) mosquitto 的安装
我查阅到的大多数都是安装 mosquitto,有比较多的安装介绍,于是我就选择安装这个。
终端执行 brew install mosquitto 就能便捷安装。
显示安装成功后,需要修改一下配置文件。我查看的大多是文章介绍包括我自己的终端提示都说了默认配置文件 mosquitto.conf 在 /usr/local/etc/mosquitto 中。但我的对应的 /usr/local/etc 下根本没有 mosquitto 这个文件夹。这个问题困扰了我很久。终端显示的提示如下:
To have launchd start mosquitto now and restart at login: brew services start mosquitto Or, if you don't want/need a background service you can just run: mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf
最后终于在这个文章的启示下成功找到配置文件。【2】地址是usr/local/Cellar/mosquitto/1.5.8/etc/mosquitto。需要在配置文件 mosquitto.conf 中添加IP地址,如下图。默认 port 是1883。

启动 mosquitto 服务器
一般的操作是:
- 停止服务 brew services stop mosquitto
- 启动服务 brew services start mosquitto
但是我执行启动命令后报错了。在前面提到的文章的启示下,我找到可行的指令,如下(1.5.8是我所使用的 mosquitto 的最新版本,大家自行替换自己使用的版本):
cd /usr/local/Cellar/mosquitto/1.5./sbin
./mosquitto -c /usr/local/Cellar/mosquitto/1.5./etc/mosquitto/mosquitto.conf -d
成功后效果如下:

接着,你就可以运行你的 python 文件了。
参考资料
【1】https://pypi.org/project/paho-mqtt/#installation
【2】https://www.jianshu.com/p/a48598e9b76e (《Mac安装MQTT服务器》)
Python:Mac 下 MQTT 服务器 Mosquitto 的配置的更多相关文章
- Mac下Android studio 之NDK配置教程(一)
Mac下Android studio 之NDK配置教程(一) 1.概述 近期项目全线转移到Mac下使用使用Android studio开发. 遇到关键代码封装到 ***native***层,此时在wi ...
- MAC 下配置MQTT 服务器Mosquitto
一.简单介绍 1.MQTT是IBM开发的一个即时通讯协议.MQTT是面向M2M和物联网的连接协议,采用轻量级发布和订阅消息传输机制. 2.Mosquitto是一款实现了 MQTT v3.1 ...
- Mac下Apache服务器和webDav服务器快速配置
当自己在家敲代码需要发请求时,就可以配置本地Apache,Mac电脑自带的服务器.这个比windows上的本地服务器还要好用,下面写下最快速配置方案. 0.在开始之前需要给自己的电脑设置下开机密码,想 ...
- CentOS6.4下Git服务器Gitosis安装配置
1.安装GIt: #yum install git 2.增加一个git用户 #useradd git #passwd git 3.创建git仓库存储目录,设置权限 #mkdir /home/git/r ...
- [转]Mac下cocos2dx-3.2+Xcode环境配置和项目创建
原文:http://blog.csdn.net/u012200908/article/details/38070885 这是有关环境配置的第二篇教程,第一篇讲的是win8下的环境配置.这里我们使用C+ ...
- Mac下Virtual Box Host-Only网络配置
Mac下的虚拟机其实有很多,Parallels.VMware Fusion.Virtual Box都不错,Parallels是目前试过感觉最好的,Fusion装64位系统驱动支持似乎不完善,而且混合模 ...
- MAC下用homebrew安装及配置apache、php和mysql
我们用到php运行环境的时候总喜欢用集成包,其实在mac下,用homebrew也可以很快的安装这些东西,配置也很简单. homebrew homebrew是mac下的一个包安装管理工具,使用非常简单方 ...
- mac下Android开发环境的配置
近似一天的时间,终于把Android环境配置好了. 总结:主要问题在于android的网站是国外,下载东西的时候需要vpn才可以.所以会出现各种各样的问题. 环境:Android Studio + S ...
- Ubuntu 16.04下Samba服务器搭建和配置(配截图)
一.相关介绍 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和 ...
随机推荐
- Windows Server 2016-Telnet 简介及安装
Telnet是基于请求注释(RFC)854的因特网标准程序和协议,该RFC规定了一种在网络上发送和接收未加密的ASCII字符(明文)的方法.Telnet包含两个功能模块:Telnet客户端和Telne ...
- butterknife使用
butterknife是一个轻量级的DI框架,官网地址:http://jakewharton.github.io/butterknife/ 注意事项:使用前需要对编辑器进行相关设置,详见官网说明. 以 ...
- python学习笔记4_类和更抽象
python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...
- SQL 表值函数/标量函数
表值函数 定义表值函数 --定义表值函数 CREATE FUNCTION GetStuScore(@Stu_ID INT ) RETURNS TABLE AS RETURN (SELECT ),[St ...
- 宝塔服务器面板 部署 thinkphp5 坑
thinkphp5 在宝塔服务器上部署,出现的问题: 1. File not found. 原因: 宝塔服务器默认不支持 pathinfo 的路径访问:需要在软件 - PHP - 管理里面,安装php ...
- 记一次因为session引起的并发问题
在做一个DSP系统(不要纠结这个系统是做什么的)时,碰到了一个很奇特的bug. 事情背景: 1.媒体方要求素材必须通过API提交给他们审核后,方可投放使用. 2.上线不久,运营反馈“每当提交素材的时候 ...
- mybatis中常见的问题总结
如下所有举例基于springboot+mybatis项目中,SSH使用mybatis的写法也一样,只是形式不同而已 问题1.org.apache.ibatis.binding.BindingExcep ...
- VS2013下载与安装
1. 官网下载地址: https://my.visualstudio.com/Downloads?q=visual studio 2013&wt.mc_id=o~msft~vscom~old ...
- celery 和 haystack
celery 是分布式异步框架 haystack 是全文检索 只能在Django中用. 一.什么是celery? ---->它是Python写的,所以只支持Python使用.但是消 ...
- element vue 表格编辑
https://xuliangzhan.github.io/vue-element-extends/#/editable/click1