docker安装mqtt协议

随笔3个月前发布 伊人芸芸
31 0 0

为了使用 Docker 创建一个 MQTT 服务,你可以使用 Eclipse Mosquitto,这是一个流行的开源 MQTT Broker。以下是详细步骤:

安装 Docker
确保你已经安装了 Docker。如果还没有安装,请参考 Docker 官方安装指南。

拉取 Mosquitto 镜像
使用以下命令从 Docker Hub 拉取 Eclipse Mosquitto 镜像:
docker pull eclipse-mosquitto

创建必要的目录结构
创建目录和配置文件:

1
2
3
4
mkdir -p mosquitto/config
mkdir -p mosquitto/data
mkdir -p mosquitto/log
touch mosquitto/config/mosquitto.conf

编辑配置文件
在 mosquitto/config/mosquitto.conf 文件中添加以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
listener 1883


下载超时问题处理
开局一把刀,设备全靠打,废话不多,直接上干货。

由于国内从DockerHub拉取镜像有时会遇到困难,此时可以配置镜像加速器,有条件的可以购买国外VPS,据说拉取一个环境只需要30s,当然也可以使用Docker官方和国内云服务器商提供的国内加速器服务,当然国内的加速器只能加速Dockerhub。

下面列出国内常用的加速站点,总体来说阿里云的速度较稳定。

docker中国区官方镜像加速:https://registry.docker-cn.com

网易镜像加速:http://hub-mirror.c.163.com

中国科技大学镜像加速:https://docker.mirrors.ustc.edu.cn

腾讯云镜像加速:https://mirror.ccs.tencentyun.com

阿里云镜像加速:https://xxx.mirror.aliyuncs.com

阿里云的镜像需要自己登录阿里云->控制台->容器镜像服务->镜像工具->镜像加速器自己获取。本节讲解就以阿里云为主进行加速器配置。

第一步:创建一个阿里云的账号

开放云原生应用-云原生(Cloud Native)-云原生介绍 - 阿里云

阿里云地址:https://promotion.aliyun.com/ntms/act/kubernetes.html

使用支付宝/钉钉扫码登录

扫描登录后:【控制台】->【容器镜像服务】->【镜像工具】->【镜像加速器】做下一步做准备

备注:如果阿里云个人镜像加速器没开通直接点击开通即可。


第二步:创建添加/更新 daemon.josn文件

创建/etc/docker目录

备注:-p选项可选:表示自动创建不存在的父目录,适用于创建连续多层级的目录

mkdir -p /etc/docker

添加个人镜像加速器地址

备注:注意添加个人的,从阿里云拷贝过来进行黏贴,并按enter回车键

tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ikg8ygxy.mirror.aliyuncs.com"]
}
EOF

跳转到所创建的docker目录下进行cat查看所创建内容

cd  /ect/docker

第三步:重新加载daemon.json以及重启docker

systemctl daemon-reload   由于更新了daemon.json文件 需要重新加载daemon.json
systemctl restart docker  重新启动docker
allow_anonymous true

创建 docker-compose.yml 文件
在项目根目录中创建一个 docker-compose.yml 文件,并添加以下内容:

1
2
3
4
5
6
7
8
9
10
11
version: '3'
services:
  mosquitto:
    image: eclipse-mosquitto
    ports:
      - "1883:1883"
      - "9001:9001"
    volumes:
      - ./mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf
      - ./mosquitto/data:/mosquitto/data
      - ./mosquitto/log:/mosquitto/log

启动服务
在 docker-compose.yml 文件所在目录中运行以下命令以启动服务:
docker-compose up -d
检查服务状态
确认服务已启动并正在运行:
docker ps
检查日志(如果有问题)
如果服务未能启动,请检查 Mosquitto 容器的日志以获取更多调试信息:
docker-compose logs mosquitto

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...