-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add document for launching Ignition node from source and Local network from source #2502
Changes from 2 commits
ad81e12
ab3037b
227d33b
10dd94b
427e247
5722689
0ac11a4
34e7555
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -115,6 +115,8 @@ $ ./target/debug/fuel-core run --poa-instant=false | |
|
||
If you want to participate in the Ignition network with your own node you can launch it following these simple commands. | ||
|
||
### From pre-compiled binaries | ||
|
||
Install the latest fuelup : | ||
```bash | ||
curl -fsSL https://install.fuel.network/ | sh | ||
|
@@ -139,19 +141,131 @@ fuel-core run \ | |
--service-name fuel-ignition-node \ | ||
--keypair {KEYGEN_SECRET_KEY} \ | ||
--relayer {ETHEREUM_RPC_ENDPOINT} \ | ||
--ip=0.0.0.0 --port 4000 --peering-port 30333 \ | ||
--ip=0.0.0.0 \ | ||
--port 4000 \ | ||
--peering-port 30333 \ | ||
--db-path ~/.fuel-ignition \ | ||
--snapshot {PATH_TO_CHAIN_CONFIGURATION_FOLDER}/ignition \ | ||
--utxo-validation \ | ||
--poa-instant false \ | ||
--enable-p2p \ | ||
--bootstrap-nodes /dnsaddr/mainnet.fuel.network \ | ||
--sync-header-batch-size 100 \ | ||
--relayer-v2-listening-contracts 0xAEB0c00D0125A8a788956ade4f4F12Ead9f65DDf \ | ||
--relayer-da-deploy-height 20620434 \ | ||
--relayer-log-page-size 2000 \ | ||
--sync-block-stream-buffer-size 30 \ | ||
--min-gas-price 1000 \ | ||
--starting-gas-price 1000 \ | ||
--gas-price-change-percent 10 \ | ||
--gas-price-threshold-percent 50 | ||
``` | ||
All the values used for the L1 relayer are based on Ethereum Mainnet make sure `{ETHEREUM_RPC_ENDPOINT}` is a RPC communicating to Ethereum Mainnet network. | ||
|
||
Instead of directly placing your personal values on the command we advise you to use, for example, environment variables. | ||
|
||
### From source | ||
|
||
Clone the chain configuration folder : | ||
``` | ||
git clone https://github.com/FuelLabs/chain-configuration | ||
``` | ||
|
||
Clone this repository : | ||
AurelienFT marked this conversation as resolved.
Show resolved
Hide resolved
|
||
``` | ||
git clone https://github.com/FuelLabs/fuel-core.git | ||
``` | ||
|
||
Go to the latest release tag for ignition on the `fuel-core` repository : | ||
``` | ||
git checkout v0.40.2 | ||
``` | ||
|
||
Generate a keyparr for your node : | ||
AurelienFT marked this conversation as resolved.
Show resolved
Hide resolved
|
||
``` | ||
cargo run --bin fuel-core-keygen -- new --key-type peering | ||
``` | ||
and copy the secret key displayed. | ||
|
||
Run your node (change all variable with {} to your own personal variables): | ||
```bash | ||
cargo run --release --bin fuel-core -- run \ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You are missing "production" feature. The command should looks like There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done |
||
--enable-relayer \ | ||
--service-name fuel-ignition-node \ | ||
--keypair {KEYGEN_SECRET_KEY} \ | ||
--relayer {ETHEREUM_RPC_ENDPOINT} \ | ||
--ip=0.0.0.0 \ | ||
--port 4000 \ | ||
--peering-port 30333 \ | ||
--db-path ~/.fuel-ignition \ | ||
--snapshot {PATH_TO_CHAIN_CONFIGURATION_FOLDER}/ignition \ | ||
--utxo-validation --poa-instant false --enable-p2p \ | ||
--utxo-validation \ | ||
--poa-instant false \ | ||
--enable-p2p \ | ||
--bootstrap-nodes /dnsaddr/mainnet.fuel.network \ | ||
--sync-header-batch-size 100 \ | ||
--relayer-v2-listening-contracts=0xAEB0c00D0125A8a788956ade4f4F12Ead9f65DDf \ | ||
--relayer-da-deploy-height=20620434 \ | ||
--relayer-log-page-size=100 \ | ||
--sync-block-stream-buffer-size 30 | ||
--relayer-v2-listening-contracts 0xAEB0c00D0125A8a788956ade4f4F12Ead9f65DDf \ | ||
--relayer-da-deploy-height 20620434 \ | ||
--relayer-log-page-size 2000 \ | ||
--sync-block-stream-buffer-size 30 \ | ||
--min-gas-price 1000 \ | ||
--starting-gas-price 1000 \ | ||
--gas-price-change-percent 10 \ | ||
--gas-price-threshold-percent 50 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We don't need to provide information which fields to use, for that we have documentation and we can point to it. Maybe we need to rework "Running a Ignition node" and point to the documentation to avoid multiple places. We just need to describe how to build the production ready binary. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't see where is the documentation. It's only the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Updated to remove duplicate |
||
``` | ||
All the values used for the L1 relayer are based on Ethereum Mainnet make sure `{ETHEREUM_RPC_ENDPOINT}` is a RPC communicating to Ethereum Mainnet network. | ||
|
||
Instead of directly placing your personal values on the command we advise you to use, for example, environment variables. | ||
|
||
## Running a Local network from source | ||
|
||
Clone this repository : | ||
AurelienFT marked this conversation as resolved.
Show resolved
Hide resolved
|
||
``` | ||
git clone https://github.com/FuelLabs/fuel-core.git | ||
``` | ||
|
||
Generate a keypair for the p2p of your node : | ||
``` | ||
cargo run --bin fuel-core-keygen -- new --key-type peering | ||
``` | ||
and copy the secret key displayed. | ||
|
||
Generate a keypair for the block production of your node : | ||
``` | ||
cargo run --bin fuel-core-keygen -- new --key-type block-production | ||
``` | ||
and copy the secret key displayed. | ||
|
||
Run your node (change all variable with {} to your own personal variables): | ||
```bash | ||
cargo run --release --bin fuel-core -- run \ | ||
--enable-relayer \ | ||
--consensus-key {KEYGEN_BLOCK_PRODUCTION_SECRET_KEY} | ||
--service-name fuel-local-node \ | ||
--relayer {ETHEREUM_RPC_ENDPOINT} \ | ||
--enable-p2p \ | ||
--ip=0.0.0.0 \ | ||
--port 4000 \ | ||
--peering-port 30333 \ | ||
--keypair {KEYGEN_P2P_SECRET_KEY} \ | ||
--db-path ~/.fuel-local \ | ||
--utxo-validation \ | ||
--poa-interval-period 1s \ | ||
--sync-header-batch-size 100 \ | ||
--relayer-v2-listening-contracts 0xAEB0c00D0125A8a788956ade4f4F12Ead9f65DDf \ | ||
--relayer-da-deploy-height 20620434 \ | ||
--relayer-log-page-size 2000 \ | ||
--sync-block-stream-buffer-size 30 \ | ||
--min-gas-price 1000 \ | ||
--starting-gas-price 1000 \ | ||
--gas-price-change-percent 10 \ | ||
--gas-price-threshold-percent 50 | ||
``` | ||
All the values used for the L1 relayer are based on Ethereum Sepolia make sure `{ETHEREUM_RPC_ENDPOINT}` is a RPC communicating to Ethereum Sepolia network. | ||
|
||
Instead of directly placing your personal values on the command we advise you to use, for example, environment variables. | ||
|
||
|
||
### Troubleshooting | ||
|
||
#### Publishing | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the difference with "Running a Local network from source"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The difference is the parameters, here we sue the chain config of ignition we use the realyer address on mainnet, we don't produce blocks, we use the bootstrap peers...