文章目录
- 前言:
- 1、搭建Ubuntu18.04服务器平台
- 2、安装docker和docker-compose
- 3、运行EdgeX
- 4、使用浏览器访问EdgeX
前言:
想着把之前arduino和树莓派搭建的物联网平台迁移到EdgeX上来,原因有二:
- 不想去造轮子,自己从零开始写一个物联网的框架,第一是能力有限,第二时费时费力,而且效果不一定能很好;
- EdgeX属于开源平台,社区生态较好,并且有很多的文档可以参考,这就会在后面的使用过程中有很多的指导;
先看运行效果:
1、搭建Ubuntu18.04服务器平台
可以直接安装到计算机上,也可以使用虚拟机。我个人因为还需要使用Ubuntu18.04做UnrealEngine的编译,编译必须要在真机上真显卡上运行,所以我直接使用的真实主机来运行Ubuntu18.04,选择的桌面版的。
这里不过多介绍如何搭建Ubuntu平台,不管是安装到虚拟机,真机或者是双系统,网上的教程都是一大把,这里不过多介绍。
2、安装docker和docker-compose
这里直接把我安装的过程全部粘贴到下面:
zhou@zhou-YangTianM4000s-46:~$ sudo mkdir -p /etc/apt/keyrings
zhou@zhou-YangTianM4000s-46:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
gpg: WARNING: unsafe ownership on homedir '/home/zhou/.gnupg'
zhou@zhou-YangTianM4000s-46:~$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-pluginer-compose-pluginlinux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
zhou@zhou-YangTianM4000s-46:~$ sudo apt-get update
sudo apt install snap
sudo apt install docker
sudo apt install docker.io
zhou@zhou-YangTianM4000s-46:~$ docker -v
Docker version 20.10.7, build 20.10.7-0ubuntu5~18.04.3
zhou@zhou-YangTianM4000s-46:~$ docker-compose -v
Command 'docker-compose' not found, but can be installed with:
sudo snap install docker # version 20.10.17, or
sudo apt install docker-compose
See 'snap info docker' for additional versions.
zhou@zhou-YangTianM4000s-46:~$ sudo apt install docker-compose
zhou@zhou-YangTianM4000s-46:~$ docker-compose -v
docker-compose version 1.17.1, build unknown
3、运行EdgeX
下载好docker和docker-compose后,需要完成如下两步工作就可以将EdgeX运行起来,分别如下:
- 下载最新的docker-compose文件,这个可以到github工程中,因为我的电脑是intel的cpu,所以需要选择x86的文件,文件地址为:https://raw.githubusercontent.com/edgexfoundry/developer-scripts/master/releases/geneva/compose-files/docker-compose-geneva-redis-no-secty.yml 这里需要将该文件下载或者直接把内容复制到ubuntu上的docker-compose.yml文件中;
- 进入docker-compose.yml文件所在目录,打开终端,运行docker-compose up命令
sudo gpasswd -a ${USER} docker
sudo su
su zhou
docker-compose up -d
zhou@zhou-YangTianM4000s-46:~/EdgeX$ docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
edgex-app-service-configurable-rules /app-service-configurable ... Up 48095/tcp, 127.0.0.1:48100->48100/tcp
edgex-core-command /core-command -cp=consul.h ... Up 127.0.0.1:48082->48082/tcp
edgex-core-consul edgex-consul-entrypoint.sh ... Up 8300/tcp, 8301/tcp, 8301/udp, 8302/tcp, 8302/udp, 127.0.0.1:8400->8400/tcp, 127.0.0.1:8500->8500/tcp, 8600/tcp, 8600/udp
edgex-core-data /core-data -cp=consul.http ... Up 127.0.0.1:48080->48080/tcp, 127.0.0.1:5563->5563/tcp
edgex-core-metadata /core-metadata -cp=consul. ... Up 127.0.0.1:48081->48081/tcp
edgex-device-rest /device-rest-go --cp=consu ... Up 127.0.0.1:49986->49986/tcp
edgex-device-virtual /device-virtual --cp=consu ... Up 127.0.0.1:49990->49990/tcp
edgex-kuiper /usr/bin/docker-entrypoint ... Up 127.0.0.1:20498->20498/tcp, 127.0.0.1:48075->48075/tcp, 9081/tcp
edgex-redis docker-entrypoint.sh redis ... Up 127.0.0.1:6379->6379/tcp
edgex-support-notifications /support-notifications -cp ... Up 127.0.0.1:48060->48060/tcp
edgex-support-scheduler /support-scheduler -cp=con ... Up 127.0.0.1:48085->48085/tcp
edgex-sys-mgmt-agent /sys-mgmt-agent -cp=consul ... Up 127.0.0.1:48090->48090/tcp
4、使用浏览器访问EdgeX
EdgeX的端口是8500,可以直接使用Ubuntu自带的火狐浏览器输入http://localhost:8500,运行效果如下所示: