hyperdx/docker-compose.ci.yml
2024-12-06 16:27:23 -08:00

82 lines
2.1 KiB
YAML

name: hdx-ci
services:
otel-collector:
build:
context: ./docker/otel-collector
target: dev
environment:
CLICKHOUSE_SERVER_ENDPOINT: 'ch-server:9000'
HYPERDX_API_KEY: ${HYPERDX_API_KEY}
HYPERDX_LOG_LEVEL: ${HYPERDX_LOG_LEVEL}
INGESTOR_API_URL: 'http://ingestor:8002'
volumes:
- ./docker/otel-collector/config.yaml:/etc/otelcol-contrib/config.yaml
ports:
- '23133:13133' # health_check extension
# - '24225:24225' # fluentd receiver
# - '4317:4317' # OTLP gRPC receiver
# - '4318:4318' # OTLP http receiver
# - '8888:8888' # metrics extension
networks:
- internal
depends_on:
- ch-server
ch-server:
image: clickhouse/clickhouse-server:23.8.8-alpine
environment:
# default settings
CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT: 1
volumes:
- ./docker/clickhouse/local/config.xml:/etc/clickhouse-server/config.xml
- ./docker/clickhouse/local/users.xml:/etc/clickhouse-server/users.xml
restart: on-failure
# ports:
# - 8123:8123 # http api
# - 9000:9000 # native
networks:
- internal
db:
image: mongo:5.0.14-focal
command: --port 29999
# ports:
# - 29999:29999
networks:
- internal
redis:
image: redis:7.0.11-alpine
# ports:
# - 6379:6379
networks:
- internal
api:
build:
context: .
dockerfile: ./packages/api/Dockerfile
target: dev
image: hyperdx/ci/api
# ports:
# - 9000:9000
environment:
AGGREGATOR_PAYLOAD_SIZE_LIMIT: '64mb'
APP_TYPE: 'api'
CLICKHOUSE_HOST: http://ch-server:8123
CLICKHOUSE_PASSWORD: api
CLICKHOUSE_USER: api
EXPRESS_SESSION_SECRET: 'hyperdx is cool 👋'
FRONTEND_URL: http://localhost:9090 # need to be localhost (CORS)
MONGO_URI: 'mongodb://db:29999/hyperdx-test'
NODE_ENV: ci
PORT: 9000
REDIS_URL: redis://redis:6379
volumes:
- ./packages/api/src:/app/src
networks:
- internal
depends_on:
- ch-server
- db
- otel-collector
- redis
networks:
internal:
name: 'hyperdx-ci-internal-network'