Overview
The Docker setup provides a complete boop network environment for development and testing. All services run in containers, making it easy to get started quickly.Prerequisites: Docker Desktop or Docker Engine with Docker Compose installed.
Quick Start
1
Clone Repository
2
Start Services
3
Verify Setup
Service Configuration
Available Docker Compositions
🚀 Standalone (Recommended)
🚀 Standalone (Recommended)
Path:
docker/standalone/What it includes:- Complete boop network stack
- Mock PVS and vendor services
- PostgreSQL and Redis
- Web interfaces for testing
⚡ Minimal
⚡ Minimal
Path:
docker/minimal/What it includes:- Core services only
- External database required
- No mock services
🔬 Development
🔬 Development
Path:
docker/development/What it includes:- All services with development optimizations
- Hot reload enabled
- Debug logging
- Development tools
Service Ports
When running with Docker, these ports are exposed:| Service | Container Port | Host Port | Description |
|---|---|---|---|
| API Gateway | 40401 | 40401 | Main REST API |
| Bridge Service | 40403 | 40403 | WebSocket bridge |
| Mock PVS | 8081 | 8081 | Palm scanner interface |
| Mock Vendor | 8080 | 8080 | Test vendor system |
| Mock User | 3000 | 3000 | User registration |
| PostgreSQL | 5432 | 5432 | Database |
| Redis | 6379 | 6379 | Cache |
Environment Variables
Customize the Docker setup with environment variables:Key Environment Variables
🔧 Service Configuration
🔧 Service Configuration
🚀 Performance Tuning
🚀 Performance Tuning
🔒 Security & Development
🔒 Security & Development
Development Workflows
Code Changes & Hot Reload
1
Enable Development Mode
2
Mount Source Code
3
View Logs
Database Management
🗄️ Migrations
🗄️ Migrations
🔍 Database Access
🔍 Database Access
📊 Database Tools
📊 Database Tools
Testing with Mock Services
🖐️ Mock Palm Vein Scanner
🖐️ Mock Palm Vein Scanner
URL: http://localhost:8081Features:
- Simulate palm scans
- Register new users
- Test different scan qualities
- Trigger various error conditions
🏪 Mock Vendor System
🏪 Mock Vendor System
URL: http://localhost:8080Features:
- Simulate vendor authentication requests
- Test payment flows
- Validate attribute requirements
- Monitor authentication results
👤 Mock User Interface
👤 Mock User Interface
URL: http://localhost:3000Features:
- User registration interface
- Attribute management
- Consent settings
- User profile management
Monitoring & Debugging
Service Health Monitoring
Performance Monitoring
📊 Metrics Collection
📊 Metrics Collection
🔍 Distributed Tracing
🔍 Distributed Tracing
Troubleshooting
Common Issues
🔴 Services Won't Start
🔴 Services Won't Start
Symptoms: Containers exit immediately or fail health checksSolutions:
🔌 Database Connection Issues
🔌 Database Connection Issues
Symptoms: Services can’t connect to PostgreSQLSolutions:
🐌 Slow Performance
🐌 Slow Performance
Symptoms: API requests are slow, timeouts occurSolutions:
Development Tips
Pro Tip: Use
docker-compose logs -f | grep ERROR to monitor for errors across all services in real-time.Fast Iteration
Use volume mounts for code changes without rebuilding containers
Clean Slate
Run
docker-compose down -v to reset all data for fresh testingResource Monitoring
Keep
docker stats running to monitor container resource usageLog Aggregation
Use
docker-compose logs -f -t | tee development.log to capture all logsNeed help? Check the Troubleshooting Guide for solutions to common development issues.