Skip to content

Latest commit

 

History

History
146 lines (100 loc) · 3.67 KB

README.md

File metadata and controls

146 lines (100 loc) · 3.67 KB

Masa Oracle: Decentralized Data Protocol 🌐🚀: Testnet Release

The Masa Oracle provides infrastructure for accessing, sharing, and rewarding providers of behavioral, personal, and identity data in a decentralized and private way. The Masa Oracle guarantees transparency, security, and equitable compensation for nodes participating in the Masa zk-Data Network & Marketplace.

Requirements for Running Masa-Node on Fly.io 📋

To run the masa-node on Fly.io's free plan, your server should meet the following specifications:

  • Operating System: Linux-based OS (Ubuntu 20.04 recommended)
  • Processor: 4 x Shared CPU
  • Memory: 1GB RAM
  • Storage: 20GB SSD
  • Network: Shared network resources

Update packages

apt update
apt upgrade

Install GO

cd $HOME
! [ -x "$(command -v go)" ] && {
VER="1.20.3"
wget "https://golang.org/dl/go$VER.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$VER.linux-amd64.tar.gz"
rm "go$VER.linux-amd64.tar.gz"
[ ! -f ~/.bash_profile ] && touch ~/.bash_profile
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> ~/.bash_profile
source $HOME/.bash_profile
}
[ ! -d ~/go/bin ] && mkdir -p ~/go/bin

Installation

  1. Clone the repository:

    git clone https://github.com/masa-finance/masa-oracle-go-testnet.git
    cd masa-oracle-go-testnet
  2. Build the node executable:

go build -v -o masa-node ./cmd/masa-node

Staking Tokens 🔐

To participate in the network and earn rewards, you must first stake your tokens:

  1. Start your node to get Private Key

    ./masa-node --start
  2. Get your private key from the node

    cat /root/.masa/masa_oracle_key.ecdsa
  3. Import the private key into Metamask to access your Ethereum address.

  4. Send Sepolia ETH and Masa testnet tokens to your address. Then stake!:

    ./masa-node --stake 100

Running the Node 🚀

Start your node and join the Masa network with default configurations:

./masa-node --start

Command-Line Interface (CLI) 💻

Customize your node's behavior with various flags:

./masa-node --bootnodes=node1,node2,node3 --port=8080 --udp=true --tcp=false --start=true

Configuration 🔧

To use a custom configuration file:

./masa-node --config=path/to/config.json

Connecting Nodes 🔗 Connect to a specific node in the network:

./masa-node --bootnodes=/ip4/34.133.16.77/udp/4001/quic-v1/p2p/16Uiu2HAmAEDCYv5RrbLhZRmHXGWXNuSFa7YDoC5BGeN3NtDmiZEb --port=4001 --udp=true --tcp=false --start=true

Deploying a Node using Fly.io 🛫

Deploy a node using Fly.io by setting up your environment and configuring your deployment settings:

Fly.io istallation

  1. Istall Fly.io

    curl -L https://fly.io/install.sh | sh
  2. Move Fly.io Foldet

    mv /root/.fly /root/masa-oracle-go-testnet/  

Register you account on https://fly.io/dashboard

Setup

  1. link your node to the FLY platform

    .fly/bin/flyctl auth login 

copy the link from terminal and paste it on your browser to connect

  1. Run your application with Fly.io from the masa-oracle-go-testnet project directory.

    .fly/bin/flyctl launch
  2. Change your node name on the web.

  3. Visit your Fly.io profile ,go to your application in the dashboard and in the secrets section specify your node name and private key

  4. You can also monitor the status of your node from the monitoring directory

Checking Deployment Status

  1. Check the status of your deployment`:
.fly/bin/flyctl status -a testmasa