Skip to content

wansuyoo/edgex-go

 
 

Repository files navigation

EdgeX Foundry Services

Go Report Card license

EdgeX Foundry is a vendor-neutral open source project hosted by The Linux Foundation building a common open framework for IoT edge computing. At the heart of the project is an interoperability framework hosted within a full hardware- and OS-agnostic reference software platform to enable an ecosystem of plug-and-play components that unifies the marketplace and accelerates the deployment of IoT solutions. This repository contains the Go implementation of EdgeX Foundry microservices. It also includes files for building the services, containerizing the services, and initializing (bootstrapping) the services.

Install and Deploy Native

Prerequisites

Serveral EdgeX Foundry services depend on ZeroMQ for communications by default. The easiest way to get and install ZeroMQ is to use or follow the following setup script: https://gist.github.com/katopz/8b766a5cb0ca96c816658e9407e83d00.

Note: Setup of the ZeroMQ library is not supported on Windows plaforms.

Installation and Execution

To fetch the code and build the microservice execute the following:

cd $GOPATH/src
go get github.com/edgexfoundry/edgex-go
cd $GOPATH/src/github.com/edgexfoundry/edgex-go
# pull the 3rd party / vendor packages
make prepare
# build the microservices
make build
# run the services
make run

Install and Deploy via Docker Container

This project has facilities to create and run Docker containers.

Prerequisites

See https://docs.docker.com/install/ to learn how to obtain and install Docker.

Installation and Execution

cd $GOPATH/src
go get github.com/edgexfoundry/edgex-go
cd $GOPATH/src/github.com/edgexfoundry/edgex-go
# To create the Docker images
sudo make docker
# To run the containers
sudo make run_docker

Install and Deploy via Snap Package

EdgeX Foundry is also available as a snap package, for more details on the snap, including how to install it, please refer to EdgeX snap

Docker Hub

EdgeX images are kept on organization's DockerHub page. They can be run in orchestration via official docker-compose.yml.

The simplest way is to do this via prepared script in bin directory:

cd bin 
./edgex-docker-launch.sh

Compiled Binaries

During development phase, it is important to run compiled binaries (not containers).

There is a script in bin directory that can help you launch the whole EdgeX system:

cd bin
./edgex-launch.sh

Community

License

Apache-2.0

About

EdgeX Golang Services Monorepo

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 77.0%
  • RAML 21.8%
  • Other 1.2%