Skip to content

Latest commit

 

History

History
74 lines (51 loc) · 3.96 KB

README.md

File metadata and controls

74 lines (51 loc) · 3.96 KB

PyGrid logo

Binder Run Tests Docker build Chat on Slack FOSSA Status

PyGrid is a peer-to-peer network of data owners and data scientists who can collectively train AI models using PySyft.

Overview

Getting started

To boot the entire PyGrid platform locally, we will use docker containers. To install docker the dependencies, just follow docker documentation.

Start Grid platform locally

It will download the latest openmined's docker images and start a grid platform with 1 gateway and 4 grid nodes. PS: Feel free to increase/decrease the number of initial PyGrid nodes (you can do this by changing the docker-compose.yml file).

$ docker-compose up

On MacOS, you have to work-around the lack of support for network_mode: host in Docker for Mac by adding following to your /etc/hosts

127.0.0.1 host.docker.internal

and running:

$ docker-compose -f docker-compose-mac.yml up

Kubernetes deployment.

You can now deploy the grid-gateway and grid-node docker containers on kubernetes. This can be either to a local (minikube) cluster or a remote cluster (GKE, EKS, AKS etc). The steps to setup the cluster can be found in ./k8s/Readme.md

Build your own images

$ docker build -t openmined/grid-node ./app/websocket/  # Build PyGrid node image
$ docker build -t openmined/grid-gateway ./gateway/  # Build gateway image

Try out the Tutorials

A comprehensive list of tutorials can be found here.

These tutorials cover how to create a PyGrid node and what operations you can perform.

Start Contributing

The guide for contributors can be found here. It covers all that you need to know to start contributing code to PySyft in an easy way.

Also join the rapidly growing community of 2500+ on Slack. The slack community is very friendly and great about quickly answering questions about the use and development of PyGrid/PySyft!

We also have a Github Project page for PySyft and PyGrid here.

High-level Architecture

High-level Architecture

Disclaimer

Do NOT use this code to protect data (private or otherwise) - at present it is very insecure.

License

Apache License 2.0