1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/EdgexFoundry-edgex-go

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Услуги EdgeX Foundry

Статус сборки Кодовое покрытие Отчет Go Report Card GitHub Latest Dev Tag GitHub Latest Stable Tag GitHub License GitHub go.mod Go version GitHub Pull Requests GitHub Contributors GitHub Committers GitHub Commit Activity> Предупреждение

Ветка main этого репозитория содержит рабочий код в разработке для предстоящего выпуска и не гарантируется стабильностью или работоспособностью. Она совместима только с веткой main репозитория edgex-compose, которая использует Docker-образы, построенные из ветки main этого и других репозиториев.

Источник для последнего выпуска можно найти на странице Releases. EdgeX Foundry — это независимый от поставщиков открытый проект, поддерживаемый The Linux Foundation, который создает общую открытую платформу для вычислений на крае Интернета вещей. В основе проекта лежит интероперабельный фреймворк, размещенный в полной платформе с отсутствием зависимости от аппаратного обеспечения и операционной системы, чтобы обеспечить экосистему компонентов, которые можно подключать и отключать, что объединяет рынок и ускоряет развертывание решений для Интернета вещей. Этот репозиторий содержит реализацию на языке Go микросервисов EdgeX Foundry. Также в нем включены файлы для сборки сервисов, упаковки сервисов в контейнеры и инициализации (запуска) сервисов.

Сборка с использованием NATS Messaging

В настоящее время возможность NATS Messaging (NATS MessageBus) является опциональной на этапе сборки. Это означает, что опубликованные Docker-образы не включают в себя возможность NATS Messaging.Следующие команды make позволят собрать локальные бинарники или локальные Docker-образы с включенной возможностью NATS Messaging для основных и поддерживающих сервисов.

make build-nats
make docker-nats

Локально собранные Docker-образы можно использовать вместо опубликованных Docker-образов в вашем файле compose. См. опцию nat-bus в Compose Builder для генерации файла compose для NATS и локальных образов разработки.

Сборка без использования OpenZiti zero-trust

В настоящее время возможность OpenZiti zero-trust является опциональной на этапе сборки. Это означает, что опубликованные Docker-образы включают в себя возможность OpenZiti zero-trust.

Следующие команды make позволят собрать локальные бинарники или локальные Docker-образы без возможности OpenZiti zero-trust для основных и поддерживающих сервисов.

make build-noziti
make docker-noziti

Начало работы

EdgeX предоставляет Docker-образы на нашей странице DockerHub. Они могут быть запущены легко с помощью docker-compose.

Самый простой способ начать работу — это получить последний docker-compose.yml и запустить контейнеры EdgeX:

release="main" # или "jakarta" для последней версии
wget https://raw.githubusercontent.com/edgexfoundry/edgex-compose/${release}/docker-compose.yml
docker-compose up -d

Вы можете проверить статус запущенных сервисов EdgeX, перейдя по адресу http://localhost:8500/Теперь, когда у вас запущен EdgeX, вы можете следовать нашей последовательности API для изучения того, как различные сервисы работают вместе для подключения IoT-устройств к облачным сервисам.

Запуск EdgeX с компонентами безопасности

Начиная с выпуска Fuji, EdgeX включает улучшенные функции безопасности, которые включены по умолчанию. Существуют несколько основных компонентов, отвечающих за функции безопасности:

  • Security-secretstore-setup
  • Security-proxy-setup

В рамках выпуска Ireland сервис security-secrets-setup больше не является внутренним сервисом, так как внутрисервисное взаимодействие не будет работать в TLS по умолчанию на одном сервере. Когда включены средства обеспечения безопасности, требуются дополнительные шаги для доступа к ресурсам EdgeX.

  1. Пользователю необходимо создать токен доступа и связать каждый запрос REST с этим токеном доступа.
  2. Экспортированные внешние порты (например, OnClickListener 59880, 59881 и т.д.) будут недоступны по соображениям безопасности. Вместо этого все запросы REST должны проходить через прокси-сервер. Прокси-сервер перенаправит запрос к соответствующим микросервисам от имени пользователя.

Примеры шагов для создания токена доступа и использования токена для доступа к ресурсам EdgeX можно найти здесь: Компоненты обеспечения безопасности## Другие варианты установки и развертывания

Нативные двоичные файлы

Предварительные требования

Go
  • Текущая целевая версия среды выполнения языка Go для релизных артефактов — v1.18.x
  • Минимально поддерживаемая версия среды выполнения языка Go — v1.18.x

Установка и выполнение

EdgeX организован как Go Modules; нет необходимости устанавливать GOPATH или переменную окружения GO111MODULE, а также нет необходимости размещать все компоненты под ~/go (или $GOPATH) и использовать команду go get. Другими словами,

git clone git@github.com:edgexfoundry/edgex-go.git
cd edgex-go
make build

Если вы хотите разместить все под $GOPATH, вы можете использовать этот шаблон также

GO111MODULE=on && export GO111MODULE
go get github.com/edgexfoundry/edgex-go
cd $GOPATH/src/github.com/edgexfoundry/edgex-go
make build

Развертывание EdgeX

Рекомендуемое развертывание служб EdgeX с помощью Docker. Подробнее см. Начало работы с Docker.

Гибридный режим для отладки/тестирования

Если вам нужно запустить и/или отладить одну из служб локально, просто остановите контейнер Docker, запущенный для этой службы, и запустите службу локально из командной строки или из вашего отладчика. Все исполняемые файлы находятся в папках cmd/<service-name>. Подробнее см. Работа в гибридной среде.> Примечание: это работает лучше всего, когда служба запускается в режиме без обеспечения безопасности, то есть с переменной окружения EDGEX_SECURITY_SECRET_STORE=false.

Создание собственных контейнеров Docker

В дополнение к прямому запуску служб можно использовать Docker и Docker Compose.

Предварительные требования

См. руководство по установке, чтобы узнать, как получить и установить Docker.

Сборка

Следуйте шагам "Установка и выполнение" выше для получения и сборки кода, затем выполните:

make docker

Задержка старта сборки Go для разработчиков

В настоящее время для основных служб EdgeX (кроме служб поддержки, таких как support-notification и support-scheduler), функция задержки старта из модулей зависимостей go-mod-bootstrap и go-mod-secrets исключена из сборки Go по умолчанию. Если вы хотите включить функцию задержки старта в сборку для этих служб, измените Makefile в этой директории. В частности, измените следующий булевский флаг с false на true перед полной сборкой Docker.

INCLUDE_DELAYED_START_BUILD_CORE:="false"

Для служб поддержки функция задержки старта включена по умолчанию. Аналогично, вы можете изменить значение по умолчанию и исключить её, изменив булевский флаг с true на false в Makefile:

INCLUDE_DELAYED_START_BUILD_SUPPORT:="true"

ЗапускИнструмент Compose Builder имеет опцию dev, чтобы сгенерировать и запустить файлы compose EdgeX, используя локально собранные образы для вышеупомянутых служб. См. README Compose Builder для получения дополнительной информации.```bash

make run no-secty dev


> *Обратите внимание, что этот запуск всех служб edgex-go с использованием локально собранных образов.*

#### Сообщество

- Обсуждение: https://github.com/orgs/edgexfoundry/discussions
- Почтовые списки: https://lists.edgexfoundry.org/mailman/listinfo

## Лицензия

[Apache-2.0](LICENSE)

## Версионирование

Для получения информации о том, как EdgeX службы выпускаются и как они совместимы друг с другом, обратитесь к [политике версионирования EdgeX Foundry](https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=21823969). В частности, службы устройств (и соответствующий SDK), службы приложений (и соответствующий SDK функций приложений) и инструменты клиента (например, EdgeX CLI и UI) могут иметь независимые мажорные выпуски, но эти службы должны быть совместимы с последним мажорным выпуском EdgeX.

## Долгосрочная поддержка

Для получения информации о поддержке выпусков EdgeX обратитесь к [политике LTS EdgeX Foundry](https://wiki.edgexfoundry.org/pages/viewpage.action?pageId=69173332). Сообщество EdgeX не предоставляет поддержку для любых выпусков, кроме LTS, за исключением последнего выпуска.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/EdgexFoundry-edgex-go.git
git@api.gitlife.ru:oschina-mirror/EdgexFoundry-edgex-go.git
oschina-mirror
EdgexFoundry-edgex-go
EdgexFoundry-edgex-go
main