65da20c225
* WIP clickhouse package with test containers setup * More clickhouse client setup now with otel and real tests, and the v1 of raw run events * Add some additional columns to raw_run_events_v1 * WIP runs dashboard service * Create a new run engine event bus event for the runs dashboard to hook into * Track run events in the run engine * make sure engine v1 runs get synced to CH * Update the attemptNumber of v3 task runs * Restructure the run events to be more sparse * emit more stuff * Setup replication package * scaffold the replication package * replication wip * resolve conflicts * more replication stuff * Add ability to drop the replication slot completely on teardown * Use the new single replacingmergetree task events table for replication * get it working * insert payloads into their own table only on insert and then join * prepare for using clickhouse cloud and now running ch migrations during boot in the entrypoint.sh * Handover WIP and tests * Testing the replication service * Remove the runs dashboard stuff that we aren't using anymore * Added a test for large payloads * hacky typecheck fix * Fix new internal package typecheck issues and start adding telemetry to the replication service * tracing over spans, some other improvements * Improvements to the runs replication service, now ready for testing * Some fixes and cleanups * Don't need this code anymore * move transaction types into the runs replication service * only send spans where there are transaction events * A couple of suggested tweaks
134 lines
2.8 KiB
YAML
134 lines
2.8 KiB
YAML
version: "3"
|
|
|
|
volumes:
|
|
database-data:
|
|
redis-data:
|
|
clickhouse:
|
|
|
|
networks:
|
|
app_network:
|
|
external: false
|
|
|
|
services:
|
|
db:
|
|
container_name: db-dev
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.postgres
|
|
restart: always
|
|
volumes:
|
|
- database-data:/var/lib/postgresql/data/
|
|
environment:
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
POSTGRES_DB: postgres
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- 5432:5432
|
|
command:
|
|
- -c
|
|
- listen_addresses=*
|
|
- -c
|
|
- wal_level=logical
|
|
- -c
|
|
- shared_preload_libraries=pg_partman_bgw
|
|
|
|
electric:
|
|
container_name: electric-dev
|
|
image: electricsql/electric:1.0.0-beta.15@sha256:4ae0f895753b82684aa31ea1c708e9e86d0a9bca355acb7270dcb24062520810
|
|
restart: always
|
|
environment:
|
|
DATABASE_URL: postgresql://postgres:postgres@db:5432/postgres?sslmode=disable
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- "3060:3000"
|
|
depends_on:
|
|
- db
|
|
|
|
clickhouse:
|
|
image: bitnami/clickhouse:latest
|
|
container_name: clickhouse-dev
|
|
environment:
|
|
CLICKHOUSE_ADMIN_USER: default
|
|
CLICKHOUSE_ADMIN_PASSWORD: password
|
|
ports:
|
|
- "8123:8123"
|
|
- "9000:9000"
|
|
volumes:
|
|
- clickhouse:/bitnami/clickhouse
|
|
networks:
|
|
- app_network
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD",
|
|
"clickhouse-client",
|
|
"--host",
|
|
"localhost",
|
|
"--port",
|
|
"9000",
|
|
"--user",
|
|
"default",
|
|
"--password",
|
|
"password",
|
|
"--query",
|
|
"SELECT 1",
|
|
]
|
|
interval: 3s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
redis:
|
|
container_name: redis-dev
|
|
image: redis:7
|
|
restart: always
|
|
volumes:
|
|
- redis-data:/data
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- 6379:6379
|
|
|
|
app:
|
|
build:
|
|
context: ../
|
|
dockerfile: ./docker/Dockerfile
|
|
ports:
|
|
- 3030:3030
|
|
depends_on:
|
|
- db
|
|
- electric
|
|
- clickhouse
|
|
- redis
|
|
env_file:
|
|
- ../.env
|
|
environment:
|
|
DATABASE_URL: postgres://postgres:postgres@db:5432/postgres?schema=public
|
|
DIRECT_URL: postgres://postgres:postgres@db:5432/postgres?schema=public
|
|
CLICKHOUSE_URL: http://default:password@clickhouse:8123
|
|
SESSION_SECRET: secret123
|
|
MAGIC_LINK_SECRET: secret123
|
|
ENCRYPTION_KEY: secret123
|
|
REMIX_APP_PORT: 3030
|
|
PORT: 3030
|
|
networks:
|
|
- app_network
|
|
|
|
ch-ui:
|
|
image: ghcr.io/caioricciuti/ch-ui:latest
|
|
container_name: ch-ui-dev
|
|
restart: always
|
|
ports:
|
|
- "5521:5521"
|
|
environment:
|
|
VITE_CLICKHOUSE_URL: "http://clickhouse:8123"
|
|
VITE_CLICKHOUSE_USER: "default"
|
|
VITE_CLICKHOUSE_PASS: "password"
|
|
depends_on:
|
|
- clickhouse
|
|
networks:
|
|
- app_network
|