EdgeX(8): 使用最新的 edgex2.0 在 ubuntu 上进行部署,替换私服地址nexus3.edgexfoundry.org 成 docker官方地址,解决下载问题。有了新UI界面
目录
- 前言
- 1,关于EdgeX2.0
- 2,安装docker 和docker-compose
- 3,安装使用文档
- 4,发现一个问题,新的yml使用了nexus3.edgexfoundry.org私服地址,网速特别慢切换成docker官方地址
- 5,新系统ui http://127.0.0.1:4000/#/dashboard
- 6,总结
前言
相关EdgeX Foundry 全部分类:
https://blog.csdn.net/freewebsys/category_9437788.html
本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/119958348
未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
1,关于EdgeX2.0
信息地址:
https://www.edgexfoundry.org/software/releases/
按照EdgeX的计划今年有两个版本的发布:
网站的首页也改版了,比之前的好看点了。
2,安装docker 和docker-compose
https://docs.docker.com/engine/install/ubuntu/
安装 docker
sudo apt-get updatesudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-releasecurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgecho "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get updatesudo apt-get install -y docker-ce docker-ce-cli containerd.iosudo systemctl enable docker# add user to docker rightsudo gpasswd -a ${USER} dockersudo chown ${USER}:${USER} /var/run/docker.socksudo systemctl restart docker
安装 docker-compose
1, Run this command to download the current stable release of Docker Compose: sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose2,Apply executable permissions to the binary: sudo chmod +x /usr/local/bin/docker-compose
增加docker 中国镜像:
vi /etc/docker/daemon.json { "registry-mirrors" : [ "http://registry.docker-cn.com" ], "insecure-registries" : [ "registry.docker-cn.com" ]}systemctl restart docker
3,安装使用文档
文档中心也变成 2.0 的文档了:
https://docs.edgexfoundry.org/2.0/getting-started/quick-start/
是关于最新的 ireland 安装教程
4,发现一个问题,新的yml使用了nexus3.edgexfoundry.org私服地址,网速特别慢切换成docker官方地址
https://github.com/edgexfoundry/edgex-compose/blob/main/docker-compose-no-secty-with-ui.yml
把地址:nexus3.edgexfoundry.org:10004 替换成 edgexfoundry 然后版本修改成 2.0.0 问题。
估计是国内网络问题还是啥,速度超级慢,下载了2天还是没有下载完成。
没有办法直接修改成了docker 的地址。
http://ping.chinaz.com/nexus3.edgexfoundry.org
# * Copyright 2021 Intel Corporation.# *# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except# * in compliance with the License. You may obtain a copy of the License at# *# * http://www.apache.org/licenses/LICENSE-2.0# *# * Unless required by applicable law or agreed to in writing, software distributed under the License# * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express# * or implied. See the License for the specific language governing permissions and limitations under# * the License.# *# * EdgeX Foundry, Hanoi, version "master"# *******************************************************************************/#### ************************ This is a generated compose file ****************************## DO NOT MAKE CHANGES that are intended to be permanent to EdgeX edgex-compose repo.## Permanent changes can be made to the source compose files located in the compose-builder folder# at the top level of the edgex-compose repo.## From the compose-builder folder use `make build` to regenerate all standard compose files variations#networks: edgex-network: driver: bridgeservices: app-service-rules: container_name: edgex-app-rules-engine depends_on: - consul - data environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_PROFILE: rules-engine EDGEX_SECURITY_SECRET_STORE: "false" REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-app-rules-engine TRIGGER_EDGEXMESSAGEBUS_PUBLISHHOST_HOST: edgex-redis TRIGGER_EDGEXMESSAGEBUS_SUBSCRIBEHOST_HOST: edgex-redis hostname: edgex-app-rules-engine image: edgexfoundry/app-service-configurable:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59701:59701/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 app-service-sample: container_name: edgex-app-sample depends_on: - consul - data environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis DATABASE_HOST: edgex-redis EDGEX_PROFILE: sample EDGEX_SECURITY_SECRET_STORE: "false" REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-app-sample TRIGGER_EDGEXMESSAGEBUS_PUBLISHHOST_HOST: edgex-redis TRIGGER_EDGEXMESSAGEBUS_SUBSCRIBEHOST_HOST: edgex-redis hostname: edgex-app-sample image: edgexfoundry/app-service-configurable:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59700:59700/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 command: container_name: edgex-core-command depends_on: - consul - database - metadata environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-core-command hostname: edgex-core-command image: edgexfoundry/core-command:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59882:59882/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 consul: container_name: edgex-core-consul hostname: edgex-core-consul image: consul:1.10 networks: edgex-network: {} ports: - 127.0.0.1:8500:8500/tcp read_only: true security_opt: - no-new-privileges:true user: root:root volumes: - consul-config:/consul/config:z - consul-data:/consul/data:z data: container_name: edgex-core-data depends_on: - consul - database - metadata environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" MESSAGEQUEUE_HOST: edgex-redis REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-core-data hostname: edgex-core-data image: edgexfoundry/core-data:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:5563:5563/tcp - 127.0.0.1:59880:59880/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 database: container_name: edgex-redis environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" REGISTRY_HOST: edgex-core-consul hostname: edgex-redis image: redis:6.2-alpine networks: edgex-network: {} ports: - 127.0.0.1:6379:6379/tcp read_only: true security_opt: - no-new-privileges:true user: root:root volumes: - db-data:/data:z device-rest: container_name: edgex-device-rest depends_on: - consul - data - metadata environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" MESSAGEQUEUE_HOST: edgex-redis REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-device-rest hostname: edgex-device-rest image: edgexfoundry/device-rest:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59986:59986/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 device-virtual: container_name: edgex-device-virtual depends_on: - consul - data - metadata environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" MESSAGEQUEUE_HOST: edgex-redis REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-device-virtual hostname: edgex-device-virtual image: edgexfoundry/device-virtual:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59900:59900/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 metadata: container_name: edgex-core-metadata depends_on: - consul - database - notifications environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" NOTIFICATIONS_SENDER: edgex-core-metadata REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-core-metadata hostname: edgex-core-metadata image: edgexfoundry/core-metadata:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59881:59881/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 notifications: container_name: edgex-support-notifications depends_on: - consul - database environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-support-notifications hostname: edgex-support-notifications image: edgexfoundry/support-notifications:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59860:59860/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 rulesengine: container_name: edgex-kuiper depends_on: - database environment: EDGEX__DEFAULT__PORT: 6379 EDGEX__DEFAULT__PROTOCOL: redis EDGEX__DEFAULT__SERVER: edgex-redis EDGEX__DEFAULT__TOPIC: rules-events EDGEX__DEFAULT__TYPE: redis KUIPER__BASIC__CONSOLELOG: "true" KUIPER__BASIC__RESTPORT: 59720 hostname: edgex-kuiper image: lfedge/ekuiper:1.3.0-alpine networks: edgex-network: {} ports: - 127.0.0.1:59720:59720/tcp read_only: true security_opt: - no-new-privileges:true user: kuiper:kuiper volumes: - kuiper-data:/kuiper/data:z scheduler: container_name: edgex-support-scheduler depends_on: - consul - database environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" INTERVALACTIONS_SCRUBAGED_HOST: edgex-core-data INTERVALACTIONS_SCRUBPUSHED_HOST: edgex-core-data REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-support-scheduler hostname: edgex-support-scheduler image: edgexfoundry/support-scheduler:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:59861:59861/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001 system: container_name: edgex-sys-mgmt-agent depends_on: - command - consul - data - metadata - notifications - scheduler environment: CLIENTS_CORE_COMMAND_HOST: edgex-core-command CLIENTS_CORE_DATA_HOST: edgex-core-data CLIENTS_CORE_METADATA_HOST: edgex-core-metadata CLIENTS_SUPPORT_NOTIFICATIONS_HOST: edgex-support-notifications CLIENTS_SUPPORT_SCHEDULER_HOST: edgex-support-scheduler DATABASES_PRIMARY_HOST: edgex-redis EDGEX_SECURITY_SECRET_STORE: "false" EXECUTORPATH: /sys-mgmt-executor METRICSMECHANISM: executor REGISTRY_HOST: edgex-core-consul SERVICE_HOST: edgex-sys-mgmt-agent hostname: edgex-sys-mgmt-agent image: edgexfoundry/sys-mgmt-agent:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:58890:58890/tcp read_only: true security_opt: - label:disable - no-new-privileges:true user: root:root volumes: - /var/run/docker.sock:/var/run/docker.sock:z ui: container_name: edgex-ui-go hostname: edgex-ui-go image: edgexfoundry/edgex-ui:2.0.0 networks: edgex-network: {} ports: - 127.0.0.1:4000:4000/tcp read_only: true security_opt: - no-new-privileges:true user: 2002:2001version: '3.7'volumes: consul-config: {} consul-data: {} db-data: {} kuiper-data: {}
这个edgex 是越做越复杂了。发现里面有两个 规则引擎,一个是edgex-app-rules-engine, 一个是 edgex-kuiper ,一个是用java 实现的,一个是 go 实现的。
估计还需要并行一段时间才能行。
https://github.com/edgexfoundry/edgex-compose/tree/ireland
按照不同的版本发布不同的docker file。
然后执行 docker-compose 把 edgex 2.0.0 启动起来:
# docker-compose up -dPulling notifications (edgexfoundry/support-notifications:2.0.0)...2.0.0: Pulling from edgexfoundry/support-notifications339de151aab4: Already exists8916ae884257: Pull completeb94dd9f5c9c5: Pull complete68a1a4f2054f: Pull completee9f68cb51e2d: Pull completeDigest: sha256:ddfe03a0401996e8e672766060f0a529f5185be883365dd22cd8d5d2d2fdadc7Status: Downloaded newer image for edgexfoundry/support-notifications:2.0.0Pulling metadata (edgexfoundry/core-metadata:2.0.0)...2.0.0: Pulling from edgexfoundry/core-metadata339de151aab4: Already existsa4f5c16d12ce: Pull completeb94dd9f5c9c5: Pull completedf9dd3c840d8: Pull complete9632000de7d8: Pull completeDigest: sha256:c389bc62144b5993339cb92a34876e5ff13c3b952249fc03ec8b39fe0d92a874Status: Downloaded newer image for edgexfoundry/core-metadata:2.0.0Pulling data (edgexfoundry/core-data:2.0.0)...2.0.0: Pulling from edgexfoundry/core-data339de151aab4: Already existsf502e5380382: Pull complete7fabdb3761ea: Pull completeb94dd9f5c9c5: Pull completea4b227a4845a: Pull complete00fac4da13ea: Pull completeDigest: sha256:c475425bca1cc04b9cc1c2f181e40033af5d9ef41d15d0fedd312e1819a995b1Status: Downloaded newer image for edgexfoundry/core-data:2.0.0Pulling device-virtual (edgexfoundry/device-virtual:2.0.0)...2.0.0: Pulling from edgexfoundry/device-virtual339de151aab4: Already exists105ccf21aed0: Pull complete0eee4814a84a: Pull completea701be3e51c3: Pull completeb3feffa1ca5a: Pull complete0c1e2e7f7fda: Pull completeDigest: sha256:b8186334733c9a302f71853281abfe04dec9ff49dc6d07838a6dac1c6fb7b513Status: Downloaded newer image for edgexfoundry/device-virtual:2.0.0Pulling device-rest (edgexfoundry/device-rest:2.0.0)...2.0.0: Pulling from edgexfoundry/device-rest339de151aab4: Already existsa7a50bb6b04a: Pull complete021130f09256: Pull complete3283ce265272: Pull complete42924bb8bbaf: Pull completeDigest: sha256:6a839f437f5c12467b9c3d3413919e18b731f798cca5559cf6bb1fd495a82b48Status: Downloaded newer image for edgexfoundry/device-rest:2.0.0Pulling app-service-sample (edgexfoundry/app-service-configurable:2.0.0)...2.0.0: Pulling from edgexfoundry/app-service-configurable339de151aab4: Already existse7b6b57a2b6a: Pull complete6229971c1f98: Pull complete616af87017ee: Pull complete91248f4e9565: Pull complete8bbed88a8e5a: Pull completeDigest: sha256:42a63a8dd43fc0eb776bb5d40a813cbba6b56db0d32b0535ac6c36bb0e1c34f7Status: Downloaded newer image for edgexfoundry/app-service-configurable:2.0.0Pulling command (edgexfoundry/core-command:2.0.0)...2.0.0: Pulling from edgexfoundry/core-command339de151aab4: Already existsa4f5c16d12ce: Already existsb94dd9f5c9c5: Already existsa2eb81350e66: Pull completed8261422f617: Pull completeDigest: sha256:ef2ed5820ae3bcb1984fb8bf6063294cfe8514a7e7488621f16b40ecee67270eStatus: Downloaded newer image for edgexfoundry/core-command:2.0.0Pulling scheduler (edgexfoundry/support-scheduler:2.0.0)...2.0.0: Pulling from edgexfoundry/support-scheduler339de151aab4: Already exists57a0e5321beb: Pull completeb94dd9f5c9c5: Pull complete8ae6953312dc: Pull complete900f3598fce3: Pull completeDigest: sha256:a2672db7ab2d1d843370c49ee139044c57ed0dd15c33415c67f83eaf31305a46Status: Downloaded newer image for edgexfoundry/support-scheduler:2.0.0Pulling system (edgexfoundry/sys-mgmt-agent:2.0.0)...2.0.0: Pulling from edgexfoundry/sys-mgmt-agent05e7bc50f07f: Pull complete6db28d0fdbf6: Pull complete292df0bc6bf3: Pull complete2e060f4bd70b: Pull complete80e8d568a223: Pull complete8dc6ef1a942a: Pull complete2312dd95470a: Pull complete5bfa8baebc60: Pull complete5432e1ef7be3: Pull completefce0515c1284: Pull completebd58e14aba83: Pull completeDigest: sha256:2562fa263b3961eb9939c32030bc71a5b07e5c82f46f9d533d4554543866a20dStatus: Downloaded newer image for edgexfoundry/sys-mgmt-agent:2.0.0Pulling ui (edgexfoundry/edgex-ui:2.0.0)...2.0.0: Pulling from edgexfoundry/edgex-ui339de151aab4: Already existsbb24751cde98: Pull completeDigest: sha256:52860d8c5d6eac74884a89b861113a28c602807b5585731babfe1996c3727558Status: Downloaded newer image for edgexfoundry/edgex-ui:2.0.0Creating edgex-core-consul ... doneCreating edgex-redis... doneCreating edgex-ui-go... doneCreating edgex-support-scheduler ... doneCreating edgex-support-notifications ... doneCreating edgex-kuiper ... doneCreating edgex-core-metadata ... doneCreating edgex-core-data ... doneCreating edgex-core-command ... doneCreating edgex-device-virtual ... doneCreating edgex-device-rest ... doneCreating edgex-app-sample ... doneCreating edgex-app-rules-engine ... doneCreating edgex-sys-mgmt-agent ... done
5,新系统ui http://127.0.0.1:4000/#/dashboard
地址:
http://127.0.0.1:4000/#/dashboard
6,总结
edgexfoundry/edgex-ui 2.0.0 0a8625cec7e0 8 weeks ago 21.2MBedgexfoundry/device-rest 2.0.0 3c6f4fdd38ac 8 weeks ago 21.1MBedgexfoundry/device-virtual 2.0.0 430ec9a82a14 8 weeks ago 24.4MBedgexfoundry/app-service-configurable 2.0.0 be4b9e0018db 8 weeks ago 24.7MBedgexfoundry/sys-mgmt-agent 2.0.0 2b2478abcbe4 8 weeks ago 312MBedgexfoundry/core-data2.0.0 d7839683a3eb 8 weeks ago 20.2MBedgexfoundry/core-metadata 2.0.0 733e1cd94b1c 8 weeks ago 16.6MBedgexfoundry/support-notifications 2.0.0 da55b7ad5e5d 8 weeks ago 16.7MBedgexfoundry/core-command 2.0.0 5f7248775328 8 weeks ago 15.9MBedgexfoundry/support-scheduler 2.0.0 ae85cc4cce7e 8 weeks ago 15.9MB
在2.0.0 上面服务都切换成 golang,就算 sys-mgmt-agent 比较大,估计还是java,后续继续研究下相关服务代码。
本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/119958348
博主地址是:https://blog.csdn.net/freewebsys