2595e7f1c5927487b1e33500540f93ca741e03f9
Cloudlysis (monorepo)
Production-oriented, multi-service Rust workspace with an operator-facing Control Plane (API + Admin UI), S3-backed document storage, and an optional observability stack for local parity.
Quickstart (local dev)
Core stack (includes MinIO + MailHog + Control Plane):
docker compose up -d --build
Full local stack with observability (Grafana/Loki/Tempo/VictoriaMetrics):
docker compose --profile observability up -d --build
Full local stack + Loki/Tempo using MinIO (S3 mode):
docker compose -f docker-compose.yml -f observability/docker-compose.s3.yml --profile observability up -d --build
Local endpoints
- Control UI:
http://localhost:8082 - Control API:
http://localhost:38080 - Grafana (observability profile):
http://localhost:3000 - MailHog UI:
http://localhost:8025(SMTP onlocalhost:1025) - MinIO console:
http://localhost:9001(S3 API onlocalhost:9000)
Repository layout (high level)
- Rust services (Cargo workspace):
aggregate/,gateway/,projection/,runner/,control/api/,shared/ - Admin UI:
control/ui/ - Docker / Swarm / Compose:
docker/,docker-compose.yml,swarm/,observability/
Production (overview)
- Control plane Swarm stack:
swarm/stacks/control-plane-prod.yml - S3 docs buckets:
CONTROL_S3_BUCKET_DOCSsupports a comma-separated shard set (e.g.cloudlysis-docs-0,cloudlysis-docs-1,cloudlysis-docs-2). Bucket selection is deterministic per-tenant; keep the full shard set stable to avoid remapping tenants. - S3 provisioning helpers (idempotent scripts; CI/CD friendly):
docker/scripts/s3_create_docs_bucket.shdocker/scripts/s3_apply_lifecycle_docs.shdocker/scripts/s3_verify_docs.sh- Gitea Actions workflow:
.gitea/workflows/s3-provision.yml
Docs
- Docker / local dev / Swarm:
DOCKER.md - Developer docs:
docs/developer/setup.md,docs/developer/testing.md - Architecture:
docs/architecture/overview.md,docs/architecture/transport.md - Usage:
docs/usage/quickstart.md,docs/usage/api.md,docs/usage/nats.md
Workspace verification
cargo fmt --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
cd control/ui && npm ci && npm run lint && npm run typecheck && npm run test && npm run build
Description
Languages
Rust
92.4%
TypeScript
6.3%
Shell
0.8%
CSS
0.3%
Makefile
0.1%