2020-11-07 18:00:31 +00:00
|
|
|
# Binary Nimbus beacon node distribution
|
2020-10-15 12:19:41 +00:00
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
This binary distribution of the Nimbus eth2 package is compiled
|
2021-05-13 18:58:52 +00:00
|
|
|
in a [reproducible way](https://reproducible-builds.org/) from source files
|
2020-11-09 14:23:15 +00:00
|
|
|
hosted at https://github.com/status-im/nimbus-eth2.
|
2020-10-15 12:19:41 +00:00
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
The tarball containing this README uses the following naming scheme:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
nimbus-eth2_<TARGET OS>_<TARGET CPU>_<VERSION>_<GIT COMMIT>.tar.gz
|
|
|
|
```
|
|
|
|
|
|
|
|
For a more complete and up-to-date documentation, please refer to the [Nimbus book](https://status-im.github.io/nimbus-eth2/).
|
2020-10-15 12:19:41 +00:00
|
|
|
|
|
|
|
## Reproducing the build
|
|
|
|
|
|
|
|
Besides the generic build requirements, you also need [Docker](https://www.docker.com/).
|
|
|
|
|
|
|
|
```bash
|
|
|
|
git clone https://github.com/status-im/nimbus-eth2.git
|
|
|
|
cd nimbus-eth2
|
|
|
|
git checkout GIT_COMMIT
|
|
|
|
make update
|
|
|
|
make dist
|
|
|
|
```
|
|
|
|
|
|
|
|
## Significant differences from self-built binaries
|
|
|
|
|
2021-04-18 16:37:30 +00:00
|
|
|
No `-march=native`.
|
2020-10-15 12:19:41 +00:00
|
|
|
|
2020-11-17 22:27:08 +00:00
|
|
|
## Running a Pyrmont node
|
2020-11-05 19:51:35 +00:00
|
|
|
|
|
|
|
With default options:
|
|
|
|
|
|
|
|
```bash
|
2020-11-17 22:27:08 +00:00
|
|
|
./run-pyrmont-beacon-node.sh
|
2020-11-05 19:51:35 +00:00
|
|
|
```
|
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
The script will forward all supplied options to the beacon node executable:
|
2020-11-05 19:51:35 +00:00
|
|
|
|
|
|
|
```bash
|
2020-11-17 22:27:08 +00:00
|
|
|
./run-pyrmont-beacon-node.sh --log-level=DEBUG --tcp-port=9050
|
2020-11-05 19:51:35 +00:00
|
|
|
```
|
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
To monitor the Eth1 validator deposit contract, you'll need to pair
|
|
|
|
the Nimbus beacon node with a Web3 provider capable of serving Eth1
|
|
|
|
event logs. This could be a locally running Eth1 client such as Geth
|
|
|
|
or a cloud service such as Infura. For more information please see
|
|
|
|
our setup guides:
|
2020-11-05 19:51:35 +00:00
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
https://status-im.github.io/nimbus-eth2/eth1.html
|
2020-11-05 19:51:35 +00:00
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
By default, the script will ask you to enter a web3 provider URL interactively,
|
2020-11-10 11:33:30 +00:00
|
|
|
but this can be bypassed by specifying a websocket `WEB3_URL` environment variable:
|
2020-11-07 07:46:53 +00:00
|
|
|
|
|
|
|
```bash
|
2020-11-17 22:27:08 +00:00
|
|
|
WEB3_URL="<YOUR_WEB3_URL>" ./run-pyrmont-beacon-node.sh
|
2020-11-07 07:46:53 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
## Running a mainnet node
|
|
|
|
|
2020-11-09 14:23:15 +00:00
|
|
|
`run-mainnet-beacon-node.sh` is a similar script intended for connecting to mainnet.
|
|
|
|
All the same conventions apply:
|
2020-11-07 07:46:53 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
# using a local Geth instance
|
2020-11-09 14:23:15 +00:00
|
|
|
WEB3_URL="ws://localhost:8545" ./run-mainnet-node.sh --max-peers=150
|
2020-11-07 07:46:53 +00:00
|
|
|
```
|
|
|
|
|
2021-03-22 17:25:34 +00:00
|
|
|
## Running a Prater node
|
|
|
|
|
|
|
|
`run-prater-beacon-node.sh` is a similar script intended for connecting to the Prater
|
|
|
|
testnet. All the same conventions apply:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
# using a local Geth instance
|
|
|
|
WEB3_URL="ws://localhost:8545" ./run-prater-node.sh --max-peers=150
|
|
|
|
```
|
|
|
|
|