name: aen-otel-batch15
services:
  collector:
    image: otel/opentelemetry-collector-contrib:0.165.0@sha256:e40d61f10c9a617cca1ffd1be4d7e2b3a4b0f0001798ff07e58cabe82e618cea
    command: ["--config=/etc/otel/collector.yaml"]
    volumes:
      - ./deploy/collector.yaml:/etc/otel/collector.yaml:ro
    ports:
      - "127.0.0.1:14318:4318"
    mem_limit: 256m
    cpus: 1
    networks: [telemetry]
    depends_on: [jaeger]
  jaeger:
    image: cr.jaegertracing.io/jaegertracing/jaeger:2.23.0@sha256:3823829974ccfc2485d2e48b165579091f32295022ae80ca49704e2f4834116e
    ports:
      - "127.0.0.1:16687:16686"
    mem_limit: 256m
    cpus: 1
    networks: [telemetry]
  pricing:
    profiles: [full]
    build: .
    environment:
      SERVICE: pricing
      HOST: 0.0.0.0
      PORT: 8414
      RAW_DIR: /tmp/otel
      OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: http://collector:4318/v1/traces
    ports: ["127.0.0.1:8414:8414"]
    mem_limit: 256m
    cpus: 1
    networks: [telemetry]
    depends_on: [collector]
  checkout:
    profiles: [full]
    build: .
    environment:
      SERVICE: checkout
      HOST: 0.0.0.0
      PORT: 8413
      RAW_DIR: /tmp/otel
      PRICING_URL: http://pricing:8414
      OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: http://collector:4318/v1/traces
    ports: ["127.0.0.1:8413:8413"]
    mem_limit: 256m
    cpus: 1
    networks: [telemetry]
    depends_on: [pricing]
networks:
  telemetry:
    ipam:
      config: [{subnet: "${OTEL_DEMO_SUBNET:-10.254.243.0/24}"}]
