Introduction
Polygon CDK's Kurtosis package simplifies the customization and instantiation of all components in a CDK chain. Leveraging the Kurtosis platform, it orchestrates the setup of chain components within Docker containers using Starlark scripts—a Python dialect—to define the step-by-step deployment process.
👉 Explore Polygon CDK's official documentation
Key Features of the Polygon CDK Kurtosis Package
The package deploys a comprehensive local development network, including:
- Local L1 Chain: Built with the ethereum-package, supporting multi-client configurations.
- Local L2 Chain: Powered by Polygon Chain Development Kit (CDK), featuring customizable components like sequencers, aggregators, and RPC nodes.
- Bridge Infrastructure: Facilitates asset transfers between L1 and L2 chains via zkEVM bridge services.
- AggLayer Protocol: Enables trustless cross-chain operations secured by zero-knowledge proofs.
- Additional Services: Monitoring tools, spam blockers, and permissionless nodes.
Version Compatibility Matrix
Fork ID | CDK Erigon | ZkEVM Prover | Data Availability |
---|---|---|---|
13 | v2.60.0-beta4 | v9.0.0-RC1-fork.13 | v0.0.10 |
12 | v2.1.2 (Default for tests) | v8.0.0-RC14-fork.12 | v0.0.10 |
Deployment Guide
Prerequisites
- Docker (Installation guide)
Kurtosis CLI:
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list sudo apt update && sudo apt install kurtosis-cli
- Foundry (
cast
),jq
,yq
, andpolycli
for advanced interactions.
Step-by-Step Deployment
Clone the repository:
git clone https://github.com/0xPolygon/kurtosis-cdk.git
Initiate the network:
kurtosis run --enclave cdk .
Network Verification
View deployment layout:
kurtosis enclave inspect cdk
Test L2 RPC connectivity:
export ETH_RPC_URL="$(kurtosis port print cdk cdk-erigon-rpc-001 rpc)" cast block-number
👉 Troubleshooting tips for common issues
FAQs
How do I monitor transaction batches?
Use:
cast rpc zkevm_verifiedBatchNumber
An increasing count indicates healthy operation.
What if the bridge UI fails to load?
Access it via:
open "$(kurtosis port print cdk zkevm-bridge-proxy-001 web-ui)"
How can I stress-test the network?
Deploy batch transactions with:
polycli loadtest --rpc-url "$ETH_RPC_URL" --requests 50000 --rate-limit 50
How do I clean up resources?
Run:
kurtosis clean --all
This guide ensures a seamless setup for testing Polygon CDK releases, combining modularity with robust tooling for developers.