32
todos/SQ-024-docker-compose-e2e.md
Normal file
32
todos/SQ-024-docker-compose-e2e.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# SQ-024: Docker Compose & E2E Example
|
||||
|
||||
**Status:** `[ ] TODO`
|
||||
**Blocked by:** SQ-023
|
||||
**Priority:** Low
|
||||
|
||||
## Description
|
||||
|
||||
Docker Compose setup for running a 3-node SQ cluster with MinIO, plus an example publish/subscribe program.
|
||||
|
||||
## Files to Create/Modify
|
||||
|
||||
- `templates/docker-compose.yaml` - 3 sq-server instances + MinIO
|
||||
- `templates/sq-server.Dockerfile` - multi-stage build
|
||||
- `examples/publish_subscribe/Cargo.toml`
|
||||
- `examples/publish_subscribe/src/main.rs`
|
||||
- `scripts/grpc.sh` - grpcurl testing helper
|
||||
|
||||
## Docker Compose Services
|
||||
|
||||
- `minio` - S3-compatible object storage
|
||||
- `sq-1` - SQ node 1 (seeds: sq-2, sq-3)
|
||||
- `sq-2` - SQ node 2 (seeds: sq-1, sq-3)
|
||||
- `sq-3` - SQ node 3 (seeds: sq-1, sq-2)
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] `docker compose up` starts all 4 services
|
||||
- [ ] All 3 SQ nodes discover each other (verify via Status RPC)
|
||||
- [ ] Example program publishes and consumes messages successfully
|
||||
- [ ] Kill one container, cluster continues operating
|
||||
- [ ] Restart container, node catches up
|
||||
Reference in New Issue
Block a user