Configure environment
Time: ~5 minutes.
1. Create the directory
mkdir -p aztec-sequencer/data && cd aztec-sequencer
2. Copy your keystore into the project
cp -r ~/.aztec/keystore ./keys
3. Create the .env file
# ── Aztec Sequencer Configuration ──
# Data & Keys
DATA_DIRECTORY=./data
KEY_STORE_DIRECTORY=./keys
LOG_LEVEL=info
# Ethereum L1 endpoints
ETHEREUM_HOSTS={{ETH_RPC}}
L1_CONSENSUS_HOST_URLS={{CONSENSUS_RPC}}
ETHEREUM_DEBUG_HOSTS={{DEBUG_RPC}}
# P2P networking
P2P_IP={{P2P_IP}}
P2P_PORT=40400
# Aztec ports
AZTEC_PORT=8080
AZTEC_ADMIN_PORT=8880
Don't know your external IP?
Run curl ipv4.icanhazip.com.
Never expose port 8880
Port 8880 is the admin port and provides unauthenticated access to node configuration. It is intentionally not mapped in the Docker Compose file in the next step.
What does each variable do?
DATA_DIRECTORYis where the node stores blockchain data. The directory grows over time.KEY_STORE_DIRECTORYis the path to your validator keystore (thekey1.jsonfile).ETHEREUM_HOSTSis your L1 execution client. The node reads rollup contract state and submits proofs here.L1_CONSENSUS_HOST_URLSis your L1 consensus client (Beacon API). Needed for blob data access.ETHEREUM_DEBUG_HOSTSis a trace-capable endpoint (debug_traceTransaction). Some providers charge extra for this.P2P_IPis your server's public IP so other nodes can connect to you.P2P_PORT 40400is the port for peer-to-peer communication, both TCP and UDP. It must be forwarded through your firewall.