Nitro-testnode brings up a full environment for local nitro testing (with or without Stylus support) including a dev-mode geth L1, and multiple instances with different roles.
- bash shell
- docker and docker-compose
All must be installed in PATH.
Check out the release branch of the repository.
Notice: release branch may be force-pushed at any time.
git clone -b release --recurse-submodules https://github.com/OffchainLabs/nitro-testnode.git
cd nitro-testnode
Initialize the node
./test-node.bash --init
To see more options, use --help
.
Check out the stylus branch of the repository.
Notice: stylus branch may be force-pushed at any time.
git clone -b stylus --recurse-submodules https://github.com/OffchainLabs/nitro-testnode.git
cd nitro-testnode
Initialize the node
./test-node.bash --init
To see more options, use --help
.
Check out the nitro or stylus repository. Use the test-node submodule of nitro repository.
Notice: testnode may not always be up-to-date with config options of current nitro node, and is not considered stable when operated in that way.
git clone --recurse-submodules https://github.com/OffchainLabs/nitro.git
cd nitro/nitro-testnode
Initialize the node in dev-mode (this will build the docker images from source)
./test-node.bash --init --dev
To see more options, use --help
.
git clone --recurse-submodules https://github.com/OffchainLabs/stylus.git
cd stylus/nitro-testnode
Initialize the node in dev-mode (this will build the docker images from source)
./test-node.bash --init --dev
To see more options, use --help
.
sequencer is the main docker to be used to access the nitro testchain. It's http and websocket interfaces are exposed at localhost ports 8547 and 8548 ports, respectively.
Stopping, restarting nodes can be done with docker-compose.
Some helper scripts are provided for simple testing of basic actions.
To fund the address 0x1111222233334444555566667777888899990000 on l2, use:
./test-node.bash script send-l2 --to address_0x1111222233334444555566667777888899990000
For help and further scripts, see:
./test-node.bash script --help
./test-node.bash script print-address --account sequencer
sequencer: 0xe2148eE53c0755215Df69b2616E552154EdC584f
validator: 0x6A568afe0f82d34759347bb36F14A6bB171d2CBe
l2owner: 0x5E1497dD1f08C87b2d8FE23e9AAB6c1De833D927
l3owner: 0x863c904166E801527125D8672442D736194A3362
l3sequencer: 0x3E6134aAD4C4d422FF2A4391Dc315c4DDf98D1a5
user_l1user: 0x058E6C774025ade66153C65672219191c72c7095
user_token_bridge_deployer: 0x3EaCb30f025630857aDffac9B2366F953eFE4F98
user_fee_token_deployer: 0x2AC5278D230f88B481bBE4A94751d7188ef48Ca2
While not a named account, 0x3f1eae7d46d88f08fc2f8ed27fcb2ab183eb2d0e is funded on all test chains.
Discord - Arbitrum
Twitter: Arbitrum