End-to-end log pipeline for Linux hosts, per /docs/architecture.md: - proto: shared gRPC contract (agent <-> ingest), Go bindings checked in - agent: Rust, musl-targeted, journald/file sourcing, RFC5424 parser, mTLS gRPC client, no required config for the common case - ingest: Go, single binary with --mode server|consumer|all; gRPC front end forwards to Redpanda unchanged, consumer normalizes and batch-writes to ClickHouse with at-least-once delivery - storage: ClickHouse schema + a plain SQL-file migration runner - api: minimal SELECT-only query endpoint, plain REST (not gRPC+gateway yet -- see api/README.md) - web: SvelteKit static SPA, one query page - transport: Redpanda compose + topic provisioning - cli: sentryctl ping stub - hack/dev-certs: throwaway CA + cert generation for local mTLS - root docker-compose.yml + docs/phase-0-runbook.md tie it together Not yet run end-to-end against real Docker/ClickHouse/Redpanda -- see the runbook's caveats section before relying on this working as-is.
11 lines
412 B
Docker
11 lines
412 B
Docker
# One-shot migration runner: bash + curl baked in, migrations/*.sql copied
|
|
# in at build time. No runtime package install and no host volume mount
|
|
# needed — works offline once built.
|
|
# docker build -f storage/Dockerfile -t sentry-clickhouse-migrate storage/
|
|
FROM alpine:3.20
|
|
RUN apk add --no-cache bash curl
|
|
WORKDIR /storage
|
|
COPY migrate.sh ./
|
|
COPY migrations ./migrations
|
|
ENTRYPOINT ["bash", "migrate.sh"]
|