Custom networks and values
This section will cover importing bootstrapper IDs, chain ID, and network ID. This will allow you to import custom values for a chain that is not in the default configuration.
Important for Bridge Nodes: Starting from [TODO: Add version from PR #4768], bridge nodes default to pruning mode. For private networks, you must either:
- Use the
--archivalflag to run an archival node, OR- Provide a valid genesis hash configuration as shown below
Without one of these options, bridge nodes on private networks will fail to start.
If you have a custom network you can export CELESTIA_CUSTOM, which will
look something like:
export BRIDGE="/ip4/<ip-address>/tcp/2121/p2p/<node-ID>"
export GENESIS_HASH=<genesis-hash>
export NETWORK=<network-name>
export CELESTIA_CUSTOM="${NETWORK}:${GENESIS_HASH}:${BRIDGE}"Query your node ID from the CLI. These values with examples would look like:
export BRIDGE="/ip4/151.115.14.33/tcp/2121/p2p/12D3KooWKEeRtzVMPUdxYsZo2edqps6mS67n6LT5mPdULSkPSxBQ"
export GENESIS_HASH=580B3DFF8A7C716968161D91116A1E171F486298D582874E93714E489C9E6E88
export NETWORK=custom
export CELESTIA_CUSTOM="${NETWORK}:${GENESIS_HASH}:${BRIDGE}"Then, start your node with:
# For bridge nodes with pruning (default)
celestia bridge start [flags...]
# For archival bridge nodes (no genesis hash required)
celestia bridge start --archival [flags...]
# For other node types
celestia <node-type> start [flags...]Bridge node specific configuration
For bridge nodes on custom networks, you have three options:
-
Use archival mode (simplest for private networks):
celestia bridge init --archival --core.ip <URI> --core.port <port> celestia bridge start --archival --core.ip <URI> --core.port <port> -
Configure with genesis hash (for pruned nodes):
# Set up the environment variable with genesis hash export CELESTIA_CUSTOM="${NETWORK}:${GENESIS_HASH}:${BRIDGE}" celestia bridge init --core.ip <URI> --core.port <port> celestia bridge start --core.ip <URI> --core.port <port> -
Sync from a specific height or hash:
# Configure in config.toml after initialization [Services] SyncFromHeight = 1000 # Or use SyncFromHash