version: "3.6"

services:
  pinpoint-collector:
    build:
      context: .
      dockerfile: Dockerfile
      args:
        - PINPOINT_VERSION=${PINPOINT_VERSION}

    container_name: "${PINPOINT_COLLECTOR_NAME}"
    image: "pinpointdocker/pinpoint-collector:${PINPOINT_VERSION}"

    restart: always
    expose:
      - "9991"
      - "9992"
      - "9993"
      - "9994"
      - "9995"
      - "9996"
    ports:
      - "${COLLECTOR_RECEIVER_AGENT_PORT:-9991}:9991/udp"
      - "${COLLECTOR_RECEIVER_METADATA_PORT:-9991}:9991/tcp"
      - "${COLLECTOR_RECEIVER_STAT_PORT:-9992}:9992/tcp"
      - "${COLLECTOR_RECEIVER_SPAN_PORT:-9993}:9993/tcp"
      - "${COLLECTOR_RECEIVER_BASE_PORT:-9994}:9994"
      - "${COLLECTOR_RECEIVER_STAT_UDP_PORT:-9995}:9995/tcp"
      - "${COLLECTOR_RECEIVER_SPAN_UDP_PORT:-9996}:9996/tcp"
      - "${COLLECTOR_RECEIVER_STAT_UDP_PORT:-9995}:9995/udp"
      - "${COLLECTOR_RECEIVER_SPAN_UDP_PORT:-9996}:9996/udp"

    environment:
      - SPRING_PROFILES=${SPRING_PROFILES}
      - CLUSTER_ENABLE=${CLUSTER_ENABLE}
      - CLUSTER_ZOOKEEPER_ADDRESS=${CLUSTER_ZOOKEEPER_ADDRESS}
      - HBASE_HOST=${HBASE_HOST}
      - HBASE_PORT=${HBASE_PORT}
      - FLINK_CLUSTER_ENABLE=${FLINK_CLUSTER_ENABLE}
      - FLINK_CLUSTER_ZOOKEEPER_ADDRESS=${FLINK_CLUSTER_ZOOKEEPER_ADDRESS}
      - DEBUG_LEVEL=${COLLECTOR_DEBUG_LEVEL}

networks:
  pinpoint:
    driver: bridge