Skip to content

Commit ba4ec0b

Browse files
bloxsterMichele ModolobloxsterCopilot
authored
Installation update (#19)
* add development branch for preview releases * updated tls * updates * update * updates and corrections * added staking to minimal node * updated Polygon quicknode page * updated Gnosis Chain quick node * Gnosis quicknode formatting error correction * updated disclaimer on welcome page * updated disclaimer on welcome page * updated disclaimer on welcome page * typo correction * typo correction on welcome page * typo correction on welcome page * updates and corrections * updates and correction * updates * updates * updates * update * updated * restructured and improved Windows installation documentation * updated sentry and rpc_daemon * updated full node by default, staking, alpha6 etc. * updates and fixes * updated staking, caplin, RPC, disk space, ports * added op-node * updates * correction * updated JSON-RPC, welcome, README * updated intro page * small syntax modification * punctuation * int chapter more info * duplicate title * syntax correction * minor markdown issues * small fixes and duplicates removal * corrected heimdall API * removed duplicate options * duplicate removal * introduced link to sync times. * updated link * updated to v3.00.0-beta1 * broken link, duplicate removal * typo * Merged main into development * updates * updates and corrections * updated disclaimer on welcome page * updates and corrections * updates and correction * updates * update * updated * updated sentry and rpc_daemon * updated full node by default, staking, alpha6 etc. * updates and fixes * updated staking, caplin, RPC, disk space, ports * added op-node * updates * updated JSON-RPC, welcome, README * updated intro page * minor markdown issues * small fixes and duplicates removal * broken link, duplicate removal * Update to v3.00.0-beta1 (#7) * add development branch for preview releases * updated tls * updates * update * updates and corrections * added staking to minimal node * updated Polygon quicknode page * updated Gnosis Chain quick node * Gnosis quicknode formatting error correction * updated disclaimer on welcome page * updated disclaimer on welcome page * updated disclaimer on welcome page * typo correction * typo correction on welcome page * typo correction on welcome page * updates and corrections * updates and correction * updates * updates * updates * update * updated * restructured and improved Windows installation documentation * updated sentry and rpc_daemon * updated full node by default, staking, alpha6 etc. * updates and fixes * updated staking, caplin, RPC, disk space, ports * added op-node * updates * correction * updated JSON-RPC, welcome, README * updated intro page * small syntax modification * punctuation * int chapter more info * duplicate title * syntax correction * minor markdown issues * small fixes and duplicates removal * corrected heimdall API * removed duplicate options * duplicate removal * introduced link to sync times. * updated link * updated to v3.00.0-beta1 * broken link, duplicate removal * typo --------- Co-authored-by: Michele Modolo <[email protected]> Co-authored-by: bloxster <[email protected]> * small updates and typos * conflict solving * Updated Diagnostics Tool and minor fixes * update to 3.00.0-beta2 * update to v3.0.0-beta2 * updated broken link in Caplin * removed instructions for staking with externalcl * updates and fixes * duplicate removal * updated to Erigon v3.0.0 * typo * updated txpool, fixed git clone CLI, added Hoodi * typo * corrections * Closing issue 13 * closing issue 13 * fixed docker general info * updated with more info * updated with more info * Update src/advanced/options.md Co-authored-by: Copilot <[email protected]> * removed duplicate line * updated quick nodes and ext cl examples * updated quick nodes and examples with ext. CL * updated quick nodes * removed info * option updated to v3.0.4 --------- Co-authored-by: Michele Modolo <[email protected]> Co-authored-by: bloxster <[email protected]> Co-authored-by: Copilot <[email protected]>
1 parent eb21899 commit ba4ec0b

File tree

13 files changed

+232
-254
lines changed

13 files changed

+232
-254
lines changed

src/SUMMARY.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,15 @@
2727

2828
- [Quick nodes](quick_nodes.md)
2929
- [How to run an Ethereum node](nodes/ethereum.md)
30+
- [Ethereum with an external CL](nodes/eth_extcl.md)
3031
- [How to run a Gnosis Chain node](nodes/gnosis.md)
32+
- [Gnosis Chain with an external CL](nodes/gno_extcl.md)
3133
- [How to run a Polygon node](nodes/polygon.md)
3234

3335
- [Advanced Usage](advanced.md)
3436
- [Configuring Erigon](advanced/configuring.md)
3537
- [Consensus Layer](advanced/consensus_layer.md)
3638
- [Caplin](advanced/caplin.md)
37-
- [Prysm](advanced/prysm.md)
38-
- [Lighthouse](advanced/lighthouse.md)
3939
- [JWT secret](advanced/jwt.md)
4040
- [Options](advanced/options.md)
4141
- [RPC Daemon](advanced/JSONRPC-daemon.md)

src/advanced/consensus_layer.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
# Consensus Layer
22

3-
The Consensus Layer is a critical component of a decentralized network, responsible for reaching agreement on the state of the network. In the context of blockchain technology, the Consensus Layer is the layer that ensures the security and integrity of the blockchain by validating transactions and blocks.
3+
The Consensus Layer (CL) is a critical component of a decentralized network, responsible for reaching agreement on the state of the network. In the context of blockchain technology, the CL ensures the security and integrity of the blockchain by validating transactions and blocks.
44

5-
Historically, an Execution Layer (EL) client alone was enough to run a full Ethereum node. However, as Ethereum has moved from proof-of-work (PoW) to proof-of-stake (PoS) based consensus with "The Merge", a Consensus Layer (CL) client needs to run alongside the EL to run a full Ethereum node, a Gnosis Chain node or a Polygon node.
5+
Historically, an Execution Layer (EL) client alone was sufficient to run a full Ethereum node. However, as Ethereum transitioned from proof-of-work (PoW) to proof-of-stake (PoS) based consensus with "The Merge," a CL client must run alongside the EL to operate an Ethereum node, a Gnosis Chain node, or a Polygon node.
66

7-
The execution client listens to new transactions, executes them in the Ethereum Virtual Machine (EVM), and holds the latest state and database of all current Ethereum data.
7+
The execution client listens to new transactions, executes them in the Ethereum Virtual Machine (EVM), and maintains the latest state and database of all current Ethereum data.
88

9-
The consensus client, also known as the *Beacon Node* or *CL client*, implements the Proof-of-Stake consensus algorithm, which enables the network to achieve agreement based on validated data from the execution client. Both clients work together to keep track of the head of the Ethereum chain and allow users to interact with the Ethereum network.
9+
The CL client, also known as the Beacon Node, implements the Proof-of-Stake consensus algorithm. This enables the network to achieve agreement based on validated data from the execution client. Both clients work together to keep track of the head of the Ethereum chain and allow users to interact with the Ethereum network.
10+
11+
Basically, without a CL client, the EL will never sync.
1012

1113
<div class="warning">
1214

1315
**Information**
1416

15-
By default, Erigon is configured to run with [Caplin](/advanced/caplin.md), the embedded Consensus Layer.
17+
By default, Erigon is configured to run with [Caplin](/advanced/caplin.md), the embedded CL.
1618
</div>
1719

18-
## Choosing the Consensus Layer client
19-
20-
A Consensus Layer (CL) client needs to run alongside Erigon to run a full Ethereum node, a Gnosis Chain node and a Polygon node and its respective testnets. Basically, without a CL client the EL will never get in sync.
20+
## Choosing an external CL client
2121

22-
Below are the links to examples on how to configure Lighhouse and Prysm to run along with Erigon:
22+
While Erigon runs by default with Caplin, the embedded CL, it is possible to run Erigon with any external CL. Below are some examples of how to configure Lighthouse and Prysm to run alongside Erigon:
2323

24-
- [Ethereum](/nodes/ethereum.md#erigon-with-prysm-as-the-external-consensus-layer)
25-
- [Gnosis Chain](/nodes/gnosis.md#erigon-with-lighthouse)
24+
- [Ethereum](/nodes/eth_extcl.md)
25+
- [Gnosis Chain](/nodes/gno_extcl.md)
2626

27-
> **important Note**: When configuring a CL client, always refer to the official CL documentation for the most up-to-date and accurate configuration instructions. This will ensure that you set up your CL client correctly and avoid any potential issues.
27+
> **Important note**: When configuring a CL client, always refer to the official CL documentation for the most up-to-date and accurate configuration instructions to avoid any potential issues.

src/advanced/eth_extcl.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Ethereum with an external CL

src/advanced/gno_extcl.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Gnosis Chain with an external CL

src/advanced/options.md

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ USAGE:
2222
erigon [command] [flags]
2323
2424
VERSION:
25-
3.0.2-cd286380
25+
3.0.4-406d855f
2626
2727
COMMANDS:
2828
init Bootstrap and initialize a new genesis block
@@ -32,8 +32,8 @@ COMMANDS:
3232
help, h Shows a list of commands or help for one command
3333
3434
GLOBAL OPTIONS:
35-
--datadir value Data directory for the databases (default: /home/user/.local/share/erigon)
36-
--ethash.dagdir value Directory to store the ethash mining DAGs (default: /home/user/.local/share/erigon-ethash)
35+
--datadir value Data directory for the databases (default: /home/bloxster/.local/share/erigon)
36+
--ethash.dagdir value Directory to store the ethash mining DAGs (default: /home/bloxster/.local/share/erigon-ethash)
3737
--externalcl Enables the external consensus layer (default: false)
3838
--txpool.disable External pool and block producer, see ./cmd/txpool/readme.md for more info. Disabling internal txpool and block producer. (default: false)
3939
--txpool.pricelimit value Minimum gas price (fee cap) limit to enforce for acceptance into the pool (default: 1)
@@ -122,7 +122,7 @@ GLOBAL OPTIONS:
122122
--torrent.port value Port to listen and serve BitTorrent protocol (default: 42069)
123123
--torrent.maxpeers value Unused parameter (reserved for future use) (default: 100)
124124
--torrent.conns.perfile value Number of connections per file (default: 10)
125-
--torrent.download.slots value Amount of files to download in parallel. (default: 128)
125+
--torrent.download.slots value Amount of files to download in parallel. (default: 32)
126126
--torrent.staticpeers value Comma separated host:port to connect to
127127
--torrent.upload.rate value Bytes per second, example: 32mb (default: "4mb")
128128
--torrent.download.rate value Bytes per second, example: 32mb (default: "128mb")
@@ -153,7 +153,8 @@ GLOBAL OPTIONS:
153153
--dev.period value Block period to use in developer mode (0 = mine only if transaction pending) (default: 0)
154154
--vmdebug Record information useful for VM and contract debugging (default: false)
155155
--networkid value Explicitly set network id (integer)(For testnets: use --chain <testnet_name> instead) (default: 1)
156-
--experiment.persist.receipts value Set > 0 to store receipts in chaindata db (only on chain-tip) - RPC for recent receipts/logs will be faster. Values: 1_000 good starting point. 10_000 receipts it's ~1Gb (not much IO increase). Please test before go over 100_000 (default: 0)
156+
--experiment.persist.receipts value Set > 0 to store receipts in chaindata db (only on chain-tip) - RPC for recent receit/logs will be faster. Values: 1_000 good starting point. 10_000 receitps it's ~1Gb (not much IO increase). Please test before go over 100_000 (default: 0)
157+
--experiment.persist.receipts.v2 To store receipts in chaindata db (only on chain-tip) - RPC for recent receit/logs will be faster. Values: 1_000 good starting point. 10_000 receitps it's ~1Gb (not much IO increase). Please test before go over 100_000 (default: false)
157158
--fakepow Disables proof-of-work verification (default: false)
158159
--gpo.blocks value Number of recent blocks to check for gas prices (default: 20)
159160
--gpo.percentile value Suggested gas price is the given percentile of a set of recent transaction gas prices (default: 60)
@@ -189,6 +190,7 @@ GLOBAL OPTIONS:
189190
--bor.waypoints Enabling bor waypont recording (default: false)
190191
--polygon.sync Enabling syncing using the new polygon sync component (default: true)
191192
--polygon.sync.stage Enabling syncing with a stage that uses the polygon sync component (default: false)
193+
--polygon.logindex Workaround for incorrect logIndex in RPC (default: false)
192194
--ethstats value Reporting URL of a ethstats service (nodename:secret@host:port)
193195
--override.prague value Manually specify the Prague fork time, overriding the bundled setting (default: 0)
194196
--caplin.discovery.addr value Address for Caplin DISCV5 protocol (default: "0.0.0.0")
@@ -197,12 +199,9 @@ GLOBAL OPTIONS:
197199
--caplin.checkpoint-sync-url value [ --caplin.checkpoint-sync-url value ] checkpoint sync endpoint
198200
--caplin.subscribe-all-topics Subscribe to all gossip topics (default: false)
199201
--caplin.max-peer-count value Max number of peers to connect (default: 128)
200-
--caplin.max-peer-count value Max number of peers to connect (default: 128)
201202
--caplin.enable-upnp Enable NAT porting for Caplin (default: false)
202203
--caplin.max-inbound-traffic-per-peer value Max inbound traffic per second per peer (default: "1MB")
203204
--caplin.max-outbound-traffic-per-peer value Max outbound traffic per second per peer (default: "1MB")
204-
--caplin.max-inbound-traffic-per-peer value Max inbound traffic per second per peer (default: "1MB")
205-
--caplin.max-outbound-traffic-per-peer value Max outbound traffic per second per peer (default: "1MB")
206205
--caplin.adaptable-maximum-traffic-requirements Make the node adaptable to the maximum traffic requirement based on how many validators are being ran (default: true)
207206
--sentinel.addr value Address for sentinel (default: "localhost")
208207
--sentinel.port value Port for sentinel (default: 7777)
@@ -241,6 +240,7 @@ GLOBAL OPTIONS:
241240
--caplin.validator-monitor Enable caplin validator monitoring metrics (default: false)
242241
--caplin.custom-config value set the custom config for caplin
243242
--caplin.custom-genesis value set the custom genesis for caplin
243+
--caplin.use-engine-api Use engine API for internal Caplin. useful for testing and if CL network is degraded (default: false)
244244
--trusted-setup-file value Absolute path to trusted_setup.json file
245245
--rpc.slow value Print in logs RPC requests slower than given threshold: 100ms, 1s, 1m. Exluded methods: eth_getBlock,eth_getBlockByNumber,eth_getBlockByHash,eth_blockNumber,erigon_blockNumber,erigon_getHeaderByNumber,erigon_getHeaderByHash,erigon_getBlockByTimestamp,eth_call (default: 0s)
246246
--txpool.gossip.disable Disabling p2p gossip of txs. Any txs received by p2p - will be dropped. Some networks like 'Optimism execution engine'/'Optimistic Rollup' - using it to protect against MEV attacks (default: false)
@@ -261,7 +261,7 @@ GLOBAL OPTIONS:
261261
--metrics Enable metrics collection and reporting (default: false)
262262
--metrics.addr value Enable stand-alone metrics HTTP server listening interface (default: "127.0.0.1")
263263
--metrics.port value Metrics HTTP server listening port (default: 6061)
264-
--diagnostics.disabled Disable diagnostics (default: false)
264+
--diagnostics.disabled Disable diagnostics (default: true)
265265
--diagnostics.endpoint.addr value Diagnostics HTTP server listening interface (default: "127.0.0.1")
266266
--diagnostics.endpoint.port value Diagnostics HTTP server listening port (default: 6062)
267267
--diagnostics.speedtest Enable speed test (default: false)
@@ -279,6 +279,3 @@ GLOBAL OPTIONS:
279279
--help, -h show help
280280
--version, -v print the version
281281
```
282-
283-
```
284-

src/getting-started/sw-requirements.md

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,11 @@
11
# Software Requirements
22

3-
Before we start, please note that building software from source can be complex. If you're not comfortable with technical tasks, you might want to check the [Docker](/installation/docker.md) installation.
3+
If you plan to compile Erigon from source, ensure that the following prerequisites are met.
44

55
Erigon works only from command line interface (CLI), so it is advisable to have a good confidence with basic commands.
66

7-
Please ensure that the following prerequisites are met.
7+
> Please note that building software from source can be complex. If you're not comfortable with technical tasks, we recommend you use other [installation](/installation.md) methods like pre-built images or Docker and skip these requirements.
88
9-
### Build essential (only for Linux)
10-
11-
Install **Build-essential** and **Cmake**:
12-
13-
```bash
14-
sudo apt install build-essential cmake -y
15-
```
169

1710
### Git
1811

@@ -21,13 +14,21 @@ Git is a tool that helps download and manage the Erigon source code. To install
2114
[https://git-scm.com/downloads](https://git-scm.com/downloads).
2215

2316

24-
### Go Programming Language
17+
### Build essential (only for Linux)
18+
19+
Install **Build-essential** and **Cmake**:
20+
21+
```bash
22+
sudo apt install build-essential cmake -y
23+
```
24+
25+
### Go Programming Language (only for Linux and MacOS)
2526

26-
Erigon utilizes Go (also known as Golang) version 1.22 or newer for part of its development. It is recommended to have a fresh Go installation. If you have an older version, consider deleting the /usr/local/go folder (you may need to use sudo) and re-extract the new version in its place.
27+
Erigon utilizes Go (also known as Golang) version 1.23 or newer for part of its development. It is recommended to have a fresh Go installation. If you have an older version, consider deleting the /usr/local/go folder (you may need to use sudo) and re-extract the new version in its place.
2728

2829
To install the latest Go version, visit the official documentation at [https://golang.org/doc/install](https://golang.org/doc/install).
2930

30-
### C++ Compiler
31+
### C++ Compiler (only for Linux and MacOS)
3132

3233
This turns the C++ part of Erigon's code into a program your computer can run. You can use either **Clang** or **GCC**:
3334

src/installation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Installation
22

3-
In order to use Erigon, the software has to be installed first. There are several ways to install Erigon, depending on the operating system and the user's choice of installation method, e.g. using a package manager, container or building from source.
3+
In order to use Erigon, the software has to be installed first. There are several ways to install Erigon, depending on the operating system and the user's choice of installation method, e.g. using a pre-built image, container or building from source.
44

55
> Always check the [list of releases](https://github.com/erigontech/erigon/releases) for release notes.
66

0 commit comments

Comments
 (0)