How to Run a Full Node for an Orbit Chain

This section provides step-by-step instructions for running an Orbit node on your local machine.

Prerequisites

  • Latest Docker Image: offchainlabs/nitro-node:v3.2.1-d81324d (You can find the latest image here)

Minimum Hardware Configuration

  • RAM: 8-16 GB

  • CPU: 2-4 core CPU (e.g., AWS t3.xLarge)

  • Storage: Depends on the Orbit chain and its traffic over time

Required Parameters

1. Parent Chain Parameters

The --parent-chain.connection.url argument requires a standard RPC endpoint for an EVM node, whether self-hosted or obtained from a node service provider:

--parent-chain.connection.url=<Parent chain RPC URL>

2. Child Chain Parameters

In the Arbitrum Orbit context, the child chain is an L2 or an L3 Orbit chain. The required parameters are chain.info-json and chain.name.

chain.info-json A JSON string that contains required information about the Orbit chain.

chain.name A mandatory flag that needs to match the chain name used in --chain.info-json:

3. AnyTrust Chains For AnyTrust chains, add the following flags to the command or configuration:

Or

4. Important Ports

Protocol
Port

RPC/http

8547

RPC/websocket

8548

Sequencer Feed

9642

For the RPC/websocket protocol, use the following flags:

5. Putting it all together

When running a Docker image, an external volume should be mounted to persist the database across restarts. The mount point inside the Docker image should be /home/user/.arbitrum.

Example:

Ensure that /some/local/dir/arbitrum already exists; otherwise, the directory might be created with root as the owner, and the Docker container won't be able to write to it.

When using the flag --chain.info-json=<Orbit Chain's chain info>, replace <Orbit Chain's chain info> with the specific chain info JSON string of the Orbit chain for which you wish to run the node.

Example:

Further Reading

For more detailed instructions and additional configuration options, please refer to the Arbitrum documentation here.