Before You Begin
Make sure you’ve completed:- Prerequisites - System requirements and dependencies
- Installation - Rust, RISC Zero, and Clementine installation
- Configuration - Configuration file setup
Quick Start Steps
Generate TLS certificates
Generate self-signed certificates for testing:This creates the necessary certificate structure in the
certs/ directory.Prepare configuration
Copy the example configuration file:
For a quick start with default settings, you can use these files as-is for regtest mode.
Build Clementine
Build Clementine with automation features:The automation feature enables automatic fulfillment of verifier/operator/aggregator duties.
Understanding Clementine Services
Clementine provides a single binary that can act as three different services:Verifier (Signer)
- Verifies and signs transactions
- Participates in the multi-signature scheme
- Requires a secret key for signing
Operator
- Manages peg-in and peg-out operations
- Coordinates with verifiers
- Handles collateral and withdrawal fees
Aggregator
- Collects signatures from verifiers
- Aggregates proofs
- Coordinates the overall bridge operation
Typical Deployment Entities
Entities typically run services in these combinations:Operator Entity
- Runs both an operator and a verifier service
- Should share the same database between services
Verifier Entity
- Runs a verifier service only
Aggregator Entity
- Runs both an aggregator and a verifier service
- Should share the same database between services
Running with Custom Log Levels
Control the verbosity of logs with the--verbose flag:
Using Environment Variables Instead
Alternatively, run Clementine using only environment variables:.env file is properly configured (see Configuration for details).
Running Tests
Verify your installation by running the test suite:Integration tests may take some time to complete and require all dependencies (PostgreSQL, Bitcoin node) to be running.
Using Docker
For a containerized deployment, Clementine provides Docker images and compose files:Pull from Docker Hub
Build locally
Run with Docker Compose
Clementine includes Docker Compose files for different network configurations:Optional: Download BitVM Cache
To speed up initialization, download pre-generated BitVM cache files:Troubleshooting
Stack Overflow Errors
If you encounter stack overflow errors, ensureRUST_MIN_STACK is set:
Database Connection Issues
Verify PostgreSQL is running and accessible:Certificate Errors
If you see TLS certificate errors:- Ensure certificates were generated:
./scripts/generate_certs.sh - Verify certificate paths in your configuration
- Check that private keys have appropriate permissions
Getting Help
For more detailed information:What’s Next?
Now that you have Clementine running:- Learn about Architecture to understand how Clementine works
- Explore Configuration for advanced configuration options
- Check out Deployment for production deployment guidelines
- Review Security Considerations for production deployments