Files
pezkuwi-telemetry/README.md
T

76 lines
2.1 KiB
Markdown

# Polkadot Telemetry
## Overview
This repository contains both the backend ingestion server for Substrate Telemetry as well as the Frontend you typically see running at [telemetry.polkadot.io](https://telemetry.polkadot.io/).
The backend is a Rust project and the frontend is React/Typescript project.
## Getting Started
To run the backend, you will need `cargo` to build the binary. We recommend using [`rustup`](https://rustup.rs/).
To run the frontend make sure to grab the latest stable version of node and install dependencies before doing anything:
```sh
nvm install stable
yarn
```
### Terminal 1 - Backend
```
cd backend
cargo build --release
./target/release/telemetry --help
```
By default, telemetry will listen on the local interface only (127.0.0.1) on port 8000. You may change both those values with the `--listen` flag as shown below:
```
telemetry --listen 0.0.0.0:8888
```
This example listen on all interfaces and on port :8888
### Terminal 2 - Frontend
```sh
cd frontend
yarn
yarn start
```
### Terminal 3 - Node
Follow up installation instructions from the [Polkadot repo](https://github.com/paritytech/polkadot)
```sh
polkadot --dev --telemetry-url ws://localhost:8000/submit
```
### Run via Docker
To run via docker make sure that you have Docker Desktop.
If you don't you can download for you OS here [Docker Desktop](https://www.docker.com/products/docker-desktop)
```sh
docker-compose up --build -d
```
- `-d` stands for detach, if you would like to see logs I recommend using [Kitmatic](https://kitematic.com/) or don't use the -d
- `--build` will build the images and rebuild, but this is not required every time
- If you want to makes UI changes, there is no need to rebuild the image as the files are being copied in via volumes.
Now navigate to localhost:3000 in your browser to view the app.
## Docker
### Build & Publish the Frontend docker image
The building process is standard. You just need to notice that the Dockerfile is in ./packages/frontend/ and tell docker about it. The context must remain the repository's root though.
```
DOCKER_USER=chevdor ./scripts/build-docker-frontend.sh
```