> For the complete documentation index, see [llms.txt](/llms.txt)

# DappNode setup

[DappNode](https://dappnode.com/) is a home-server platform for running blockchain nodes through a web UI instead of a terminal. The community-maintained [Aztec package](https://github.com/dappnode/DAppNodePackage-aztec-generic) runs the sequencer as a one-click install, replacing the [Configure environment](/operate/operators/solo-sequencer/configure-environment.md), [Docker Compose](/operate/operators/solo-sequencer/docker-compose.md), and [Start the node](/operate/operators/solo-sequencer/start-node.md) steps of this guide. Keystore generation, funding, and registration stay the same.

A DappNode box that already runs your own Ethereum node is the standout combination: the sequencer points at the execution and consensus clients on the same machine, so there is no third-party RPC dependency, no rate limits, and no container-to-host networking to configure.

<!-- -->

## Before you start

* Your box must meet the [sequencer hardware floor](/operate/operators/solo-sequencer/pre-flight.md#hardware) on top of whatever your Ethereum node already uses.
* Run through [Pre-flight](/operate/operators/solo-sequencer/pre-flight.md) for the network, reliability, and token requirements; they apply unchanged.

## 1. Install the Aztec package

Open the DAppStore on your DappNode and install the **Aztec** package. Pick the variant matching your network (mainnet or Sepolia testnet).

## 2. Point it at L1

The setup wizard asks for two values:

* **Ethereum RPC hosts**: your execution client. The package pre-fills the box's own execution client through DappNode's staker alias: `http://execution.mainnet.dncore.dappnode:8545` on mainnet, `http://execution.sepolia.dncore.dappnode:8545` on testnet. Any external RPC also works.
* **L1 consensus host URLs**: your beacon client. Pre-filled as `http://beaconchain.mainnet.dncore.dappnode:3500` on mainnet, `http://beaconchain.sepolia.dncore.dappnode:3500` on testnet.

Blob-serving beacon required

Your beacon client must serve blob sidecars, or the sequencer fails with blob sidecar errors and cannot sync. Run it as a supernode or semi-supernode (for example Lighthouse v8.0.0 or later, or Prysm v7.10 or later, with `--super-node` or `--semi-supernode`). This applies on both mainnet and testnet. See [L1 RPC requirements](/operate/operators/concepts/l1-rpc.md#the-blob-serving-consensus-client) for details.

## 3. Generate and upload your keystore

Generate the keystore on any machine, for example your laptop. Install the Aztec CLI there ([Install Aztec toolchain](/operate/operators/solo-sequencer/install-toolchain.md)), then generate the keystore exactly as in [Generate keystore](/operate/operators/solo-sequencer/generate-keystore.md#3-generate-the-validator-keystore). Then upload the private keystore file (`key1.json`) to the Aztec package through the DappNode **file manager**, into the package's `/keystore` directory.

## 4. Fund, register, verify

These steps are identical to the manual guide:

* [Fund your accounts](/operate/operators/solo-sequencer/fund-accounts.md) for the publisher top-up and self-stake.
* [Register as sequencer](/operate/operators/solo-sequencer/register-sequencer.md) through the staking dashboard, using the public keystore file (`key1_staker_output.json`) from step 3.
* [Verify everything works](/operate/operators/solo-sequencer/verify.md): the explorer check and P2P check apply unchanged. For container health, use the package's logs and status in the DappNode UI.

## Caveats

* **Single box only.** The package does not support the [HA topology](/operate/operators/setup/high_availability_sequencers.md); for redundancy you need the manual setup.
* **Community-maintained.** The package is maintained by DappNode, not by Aztec. The [package repository](https://github.com/dappnode/DAppNodePackage-aztec-generic) is the place for package-specific issues.
