Quickstart
This guide walks you through launching CoW Protocol Services locally using Docker Compose. The environment operates in “fork mode,” allowing developers to test against a forked blockchain with real token contracts while maintaining isolation.Prerequisites
You will need:- Docker Desktop/Engine with Docker Compose
- An Ethereum RPC endpoint (e.g., Alchemy, Infura, or a local node)
- Rust toolchain (optional, for local development)
Setup Steps
1. Clone the Repository
2. Configure Environment Variables
Set your RPC endpoint and chain ID:3. Launch Services
Start all services using Docker Compose:4. Monitor Logs
Wait until all services initialize properly. You should see logs from the orderbook, autopilot, driver, and solver services.Access Points
Once running, you can reach the following interfaces:Testing Workflow
Test Accounts
The playground provides test accounts with 10,000 ETH each, derived from the standard mnemonic:Place a Test Swap
- Wrap ETH to WETH using the Anvil RPC node
- Place a swap order through the CoW Swap UI or directly via the Orderbook API
- Monitor settlement through service logs and the block explorer
Network Support
The setup supports multiple chains by adjusting environment variables and restarting services:- Ethereum Mainnet
- Gnosis Chain
- Arbitrum One
- Base
- Polygon
CHAIN_ID and RPC_URL in your .env file and restart Docker Compose.