安装docker
docker:为服务提供的虚拟环境,是创建容器的工具,是应用容器引擎
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
docker操作
docker images | 罗列所有镜像 | |
docker rmi -f <镜像ID>:(TAG ID) | 删除镜像 | |
docker load < rocketmq.tar | 载入镜像 | |
docker export <容器 ID> > 镜像名.tar | 导出镜像 | |
docker ps | 罗列运行容器 | |
docker ps -a | 罗列所有容器包含未运行 | |
docker stop <容器 ID> | 停止容器 | |
docker restart <容器 ID> | 重启容器 | |
docker exec -it <容器 ID> /bin/sh | 进入容器 | |
exit | 退出容器 |
emq安装
emq 安装参考
emq:是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器
获取emq
#获取emq镜像
$ wget -O emqx-docker.zip https://www.emqx.io/downloads/broker/v4.0.0/emqx-docker-v4.0.0-alpine3.10-amd64.zip
#解压镜像
$ unzip emqx-docker.zip
#查看镜像
ls
---------
emqx-docker-v4.0.0-alpine3.10-amd64
# 导入容器
$ docker load < emqx-docker-v4.0.0-alpine3.10-amd64
启动 docker 容器(即创建容器只需要执行一次)
docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:v4.0.0-alpine3.10-amd64
查看容器运行状态
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6c59d6fa1ac5 emqx/emqx:v4.0.0-alpine3.10-amd64 "/usr/bin/docker-ent…" 15 minutes ago Exited (137) 6 minutes ago emqx
停止容器
docker stop <容器 ID>
docker stop 6c59d6fa1ac5
---------------------------------
6c59d6fa1ac5
重启容器
docker restart <容器 ID>
docker restart 6c59d6fa1ac5
---------------------------------
6c59d6fa1ac5
验证emq服务器
浏览器输入 http://192.168.1.101:18083/
账户:admin
密码:publish
emq 添加用户名、密码认证
- 配置插件
docker exec -it 6c59d6fa1ac5 /bin/sh //进入容器
cd ./etc
vi emqx.conf
allow_anonymous = false //关闭匿名
acl_nomatch = deny ACL规则设置
- 启动插件
- 在emq插件管理页面使能 emqx_auth_username插件
- 命令行启动插件
cd /usr/local/bin/
./emqx_ctl plugins load emqx_auth_username //命令行启动插件
- 添加用户名和密码
cd /usr/local/bin/
./emqx_ctl plugins load emqx_auth_username //命令行启动插件
./emqx_ctl users add admin 12345678 //添加用户名及密码
./emqx_ctl users list //查看用户名列表
./emqx_ctl users del admin //删除用户名
- emq认证
插件 | 说明 |
---|---|
emq_auth_clientid | ClientId 认证/鉴权插件 |
emq_auth_username | 用户名密码认证/鉴权插件 |
emq_auth_ldap | LDAP 认证/鉴权插件 |
emq_auth_http | HTTP 认证/鉴权插件 |
emq_auth_mysql | MySQ L认证/鉴权插件 |
emq_auth_pgsql | Postgre 认证/鉴权插件 |
emq_auth_redis | Redis 认证/鉴权插件 |
emq_auth_mongo | MongoDB 认证/鉴权插件 |
安装 Node-RED
Node-RED 安装参考
Node-RED:可视化物联网编排工具
获取Node-RED
docker run -it -p 1880:1880 --name mynodered nodered/node-red
查看容器运行状态
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
acb37c101674 nodered/node-red "npm --no-update-not…" 43 hours ago Exited (0) 43 hours ago mynodered
重启容器
docker restart <容器 ID>
docker restart acb37c101674
---------------------------------
acb37c101674
验证Node-RED服务器
浏览器输入 http://192.168.1.101:1880/