Canton Network DevNet Validator Installation Guide
About Canton Network
Canton Network is the first public permissionless blockchain platform designed for institutional finance, combining privacy, interoperability, and scalability.
Key Features:
- Privacy-preserving architecture
- Atomic cross-domain transactions
- BFT consensus
- Institutional-grade security
Network Details:
- Network: DevNet
- Version: 0.5.4
- Migration ID: 1
- Purpose: Testing and development
Requirements
Hardware
| Component | Minimum | Recommended |
|-----------|--------------|--------------|
| CPU | 4 cores | 8 cores |
| RAM | 8 GB | 16 GB |
| Storage | 100 GB SSD | 250 GB NVMe |
| Network | 100 Mbps | 1 Gbps |
Software
- Docker 20.10+
- Docker Compose 2.0+
- curl, jq
Installation
One-liner Installation
# Install dependencies
sudo apt update && sudo apt install -y curl jq docker.io docker-compose
# Check current network version
curl -s https://docs.dev.global.canton.network.sync.global/info | jq '.'
# Create directory
VERSION="0.5.4"
MIGRATION_ID="1"
mkdir -p ~/.canton/${VERSION}
cd ~/.canton/${VERSION}
# Download release
wget https://github.com/digital-asset/decentralized-canton-sync/releases/download/v${VERSION}/${VERSION}_splice-node.tar.gz
tar xzf ${VERSION}_splice-node.tar.gz
cd splice-node/docker-compose/validator
# Get onboarding secret (valid for 1 hour)
SECRET=$(curl -X POST https://sv.sv-1.dev.global.canton.network.sync.global/api/sv/v0/devnet/onboard/validator/prepare)
# Start validator
export IMAGE_TAG=${VERSION}
./start.sh \
-s "https://sv.sv-1.dev.global.canton.network.sync.global" \
-o "${SECRET}" \
-p "YOUR_VALIDATOR_NAME" \
-m "${MIGRATION_ID}" \
-w
Step-by-Step Installation
1. System Preparation
# Update system
apt update && apt upgrade -y
# Install dependencies
apt install -y curl iptables build-essential git wget jq make gcc \
nano tmux htop pkg-config libssl-dev tar clang ncdu unzip
# Install Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
apt update && apt install -y docker-ce
docker --version
# Install Docker Compose
curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
2. Check Network Status
# Get current version and migration ID
curl -s https://docs.dev.global.canton.network.sync.global/info | jq '.'
3. Download Canton Node
VERSION="0.5.4"
mkdir -p ~/.canton/${VERSION}
cd ~/.canton/${VERSION}
wget https://github.com/digital-asset/decentralized-canton-sync/releases/download/v${VERSION}/${VERSION}_splice-node.tar.gz
tar xzf ${VERSION}_splice-node.tar.gz
cd splice-node/docker-compose/validator
4. Get Onboarding Secret
DevNet onboarding secret (auto-generated, valid for 1 hour):
curl -X POST https://sv.sv-1.dev.global.canton.network.sync.global/api/sv/v0/devnet/onboard/validator/prepare
5. Start Validator
cd ~/.canton/0.5.4/splice-node/docker-compose/validator
export IMAGE_TAG=0.5.4
./start.sh \
-s "https://sv.sv-1.dev.global.canton.network.sync.global" \
-o "YOUR_ONBOARDING_SECRET" \
-p "YOUR_VALIDATOR_NAME" \
-m "1" \
-w
Parameters:
-s - Sponsor SV URL
-o - Onboarding secret (use "" after first start)
-p - Party hint (validator name)
-m - Migration ID
-w - Enable wallet
6. Check Status
# Container status
docker ps --filter "name=splice-validator"
# Logs
docker logs splice-validator-validator-1 -f --tail 100
# Health check
docker ps --filter "name=splice-validator-validator" --format "{{.Names}}: {{.Status}}"
# Should show: Up X minutes (healthy)
Management
Stop
cd ~/.canton/0.5.4/splice-node/docker-compose/validator
./stop.sh
Restart
cd ~/.canton/0.5.4/splice-node/docker-compose/validator
export IMAGE_TAG=0.5.4
./start.sh \
-s "https://sv.sv-1.dev.global.canton.network.sync.global" \
-o "" \
-p "YOUR_VALIDATOR_NAME" \
-m "1" \
-w
View Logs
cd ~/.canton/0.5.4/splice-node/docker-compose/validator
# All containers
docker compose logs -f
# Validator only
docker compose logs -f validator
# Last 100 lines
docker logs splice-validator-validator-1 --tail 100
Monitoring
Prometheus Metrics
Canton exports metrics on port 10013 (Prometheus format):
docker exec splice-validator-validator-1 curl -s http://localhost:10013/metrics | head -20
Useful Links
- DevNet Explorer: https://lighthouse.devnet.cantonloop.com/
- Documentation: https://docs.dev.sync.global/
- GitHub: https://github.com/digital-asset/decentralized-canton-sync
- Validator Form: https://sync.global/validator-request/
Created by POSTHUMAN validators
Website: https://posthuman.digital