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 )
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:
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.info-json=<Orbit Chain's chain info>
chain.name A mandatory flag that needs to match the chain name used in --chain.info-json:
```sh
--chain.name=<Orbit Chain's name>
```
3. AnyTrust Chains For AnyTrust chains, add the following flags to the command or configuration:
--node.data-availability.enable
--node.data-availability.rest-aggregator.urls=<A list of DAS REST endpoints>
Or
--node.data-availability.rest-aggregator.online-url-list=<A URL that returns a list of the DAS REST endpoints>
4. Important Ports
Protocol
Port
RPC/http
8547
RPC/websocket
8548
Sequencer Feed
9642
For the RPC/websocket protocol, use the following flags:
--ws.port=8548
--ws.addr=0.0.0.0
--ws.origins=\*
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.
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.