2022-03-22 00:03:20 +05:30
version : "2.4"
2022-12-05 16:24:01 +05:30
x-clickhouse-defaults : &clickhouse-defaults
restart : on -failure
image : clickhouse/clickhouse-server:22.8.8-alpine
tty : true
depends_on :
- zookeeper-1
# - zookeeper-2
# - zookeeper-3
logging :
options :
max-size : 50m
max-file : "3"
healthcheck :
# "clickhouse", "client", "-u ${CLICKHOUSE_USER}", "--password ${CLICKHOUSE_PASSWORD}", "-q 'SELECT 1'"
test : [ "CMD" , "wget" , "--spider" , "-q" , "localhost:8123/ping" ]
interval : 30s
timeout : 5s
retries : 3
ulimits :
nproc : 65535
nofile :
soft : 262144
hard : 262144
x-clickhouse-depends : &clickhouse-depends
depends_on :
clickhouse :
condition : service_healthy
# clickhouse-2:
# condition: service_healthy
# clickhouse-3:
# condition: service_healthy
2022-03-22 00:03:20 +05:30
services :
2022-12-05 16:24:01 +05:30
zookeeper-1 :
image : bitnami/zookeeper:3.7.0
user : root
ports :
- "2181:2181"
- "2888:2888"
- "3888:3888"
2022-03-22 00:03:20 +05:30
volumes :
2022-12-05 16:24:01 +05:30
- ./data/zookeeper-1:/bitnami/zookeeper
environment :
- ZOO_SERVER_ID=1
- ZOO_SERVERS=0.0.0.0:2888:3888
# - ZOO_SERVERS=0.0.0.0:2888:3888,zookeeper-2:2888:3888,zookeeper-3:2888:3888
- ALLOW_ANONYMOUS_LOGIN=yes
- ZOO_AUTOPURGE_INTERVAL=1
# zookeeper-2:
# image: bitnami/zookeeper:3.7.0
# user: root
# ports:
# - "2182:2181"
# - "2889:2888"
# - "3889:3888"
# volumes:
# - ./data/zookeeper-2:/bitnami/zookeeper
# environment:
# - ZOO_SERVER_ID=2
# - ZOO_SERVERS=zookeeper-1:2888:3888,0.0.0.0:2888:3888,zookeeper-3:2888:3888
# - ALLOW_ANONYMOUS_LOGIN=yes
# - ZOO_AUTOPURGE_INTERVAL=1
# zookeeper-3:
# image: bitnami/zookeeper:3.7.0
# user: root
# ports:
# - "2183:2181"
# - "2890:2888"
# - "3890:3888"
# volumes:
# - ./data/zookeeper-3:/bitnami/zookeeper
# environment:
# - ZOO_SERVER_ID=3
# - ZOO_SERVERS=zookeeper-1:2888:3888,zookeeper-2:2888:3888,0.0.0.0:2888:3888
# - ALLOW_ANONYMOUS_LOGIN=yes
# - ZOO_AUTOPURGE_INTERVAL=1
clickhouse :
<< : *clickhouse-defaults
container_name : clickhouse
hostname : clickhouse
2022-05-03 15:26:32 +05:30
ports :
2022-06-23 10:15:21 +05:30
- "9000:9000"
- "8123:8123"
2022-12-05 16:24:01 +05:30
- "9181:9181"
volumes :
- ./clickhouse-config.xml:/etc/clickhouse-server/config.xml
- ./clickhouse-users.xml:/etc/clickhouse-server/users.xml
- ./clickhouse-cluster.xml:/etc/clickhouse-server/config.d/cluster.xml
# - ./clickhouse-storage.xml:/etc/clickhouse-server/config.d/storage.xml
- ./data/clickhouse/:/var/lib/clickhouse/
# clickhouse-2:
# <<: *clickhouse-defaults
# container_name: clickhouse-2
# hostname: clickhouse-2
# ports:
# - "9001:9000"
# - "8124:8123"
# - "9182:9181"
# volumes:
# - ./clickhouse-config.xml:/etc/clickhouse-server/config.xml
# - ./clickhouse-users.xml:/etc/clickhouse-server/users.xml
# - ./clickhouse-cluster.xml:/etc/clickhouse-server/config.d/cluster.xml
# # - ./clickhouse-storage.xml:/etc/clickhouse-server/config.d/storage.xml
# - ./data/clickhouse-2/:/var/lib/clickhouse/
# clickhouse-3:
# <<: *clickhouse-defaults
# container_name: clickhouse-3
# hostname: clickhouse-3
# ports:
# - "9002:9000"
# - "8125:8123"
# - "9183:9181"
# volumes:
# - ./clickhouse-config.xml:/etc/clickhouse-server/config.xml
# - ./clickhouse-users.xml:/etc/clickhouse-server/users.xml
# - ./clickhouse-cluster.xml:/etc/clickhouse-server/config.d/cluster.xml
# # - ./clickhouse-storage.xml:/etc/clickhouse-server/config.d/storage.xml
# - ./data/clickhouse-3/:/var/lib/clickhouse/
2022-03-22 00:03:20 +05:30
alertmanager :
2022-08-05 22:30:55 +05:30
image : signoz/alertmanager:0.23.0-0.2
2022-12-05 16:24:01 +05:30
volumes :
- ./data/alertmanager:/data
2022-03-29 22:59:32 +05:30
depends_on :
2022-12-05 16:24:01 +05:30
query-service :
condition : service_healthy
2022-04-06 00:05:05 +05:30
restart : on -failure
2022-03-22 00:03:20 +05:30
command :
2022-06-08 16:03:48 +05:30
- --queryService.url=http://query-service:8085
2022-03-29 22:59:32 +05:30
- --storage.path=/data
2022-03-22 00:03:20 +05:30
# Notes for Maintainers/Contributors who will change Line Numbers of Frontend & Query-Section. Please Update Line Numbers in `./scripts/commentLinesForSetup.sh` & `./CONTRIBUTING.md`
query-service :
image : signoz/query-service:latest
2022-03-29 22:59:32 +05:30
container_name : query-service
2022-03-22 00:03:20 +05:30
command : [ "-config=/root/config/prometheus.yml" ]
2022-12-05 16:24:01 +05:30
# ports:
# - "6060:6060" # pprof port
# - "8080:8080" # query-service port
2022-03-22 00:03:20 +05:30
volumes :
- ./prometheus.yml:/root/config/prometheus.yml
- ../dashboards:/root/config/dashboards
2022-12-05 16:24:01 +05:30
- ./data/signoz/:/var/lib/signoz/
2022-03-22 00:03:20 +05:30
environment :
2022-05-06 11:49:49 +05:30
- ClickHouseUrl=tcp://clickhouse:9000/?database=signoz_traces
2022-08-24 18:58:44 +05:30
- ALERTMANAGER_API_PREFIX=http://alertmanager:9093/api/
2022-10-03 05:48:54 +05:30
- SIGNOZ_LOCAL_DB_PATH=/var/lib/signoz/signoz.db
- DASHBOARDS_PATH=/root/config/dashboards
2022-03-22 00:03:20 +05:30
- STORAGE=clickhouse
- GODEBUG=netdns=go
- TELEMETRY_ENABLED=true
2022-12-05 16:24:01 +05:30
- DEPLOYMENT_TYPE=docker-standalone-amd
restart : on -failure
2022-04-06 00:05:05 +05:30
healthcheck :
2023-02-28 23:42:21 +05:30
test : [ "CMD" , "wget" , "--spider" , "-q" , "localhost:8080/api/v1/health" ]
2022-04-06 00:05:05 +05:30
interval : 30s
timeout : 5s
retries : 3
2022-12-05 16:24:01 +05:30
<< : *clickhouse-depends
2022-03-22 00:03:20 +05:30
otel-collector :
2023-03-10 21:52:42 +05:30
image : signoz/signoz-otel-collector:0.66.6
2022-03-22 00:03:20 +05:30
command : [ "--config=/etc/otel-collector-config.yaml" ]
2022-12-07 17:57:55 +05:30
user : root # required for reading docker container logs
2022-03-22 00:03:20 +05:30
volumes :
- ./otel-collector-config.yaml:/etc/otel-collector-config.yaml
2022-08-24 15:11:38 +05:30
- /var/lib/docker/containers:/var/lib/docker/containers:ro
2022-07-14 19:36:19 +05:30
environment :
- OTEL_RESOURCE_ATTRIBUTES=host.name=signoz-host,os.type=linux
2022-12-09 21:57:25 +05:30
- DOCKER_MULTI_NODE_CLUSTER=false
2023-02-10 23:50:15 +05:30
- LOW_CARDINAL_EXCEPTION_GROUPING=false
2022-03-22 00:03:20 +05:30
ports :
2022-12-05 16:24:01 +05:30
# - "1777:1777" # pprof extension
- "4317:4317" # OTLP gRPC receiver
- "4318:4318" # OTLP HTTP receiver
# - "8888:8888" # OtelCollector internal metrics
# - "8889:8889" # signoz spanmetrics exposed by the agent
# - "9411:9411" # Zipkin port
# - "13133:13133" # health check extension
# - "14250:14250" # Jaeger gRPC
# - "14268:14268" # Jaeger thrift HTTP
# - "55678:55678" # OpenCensus receiver
# - "55679:55679" # zPages extension
restart : on -failure
<< : *clickhouse-depends
2022-03-22 00:03:20 +05:30
otel-collector-metrics :
2023-03-10 21:52:42 +05:30
image : signoz/signoz-otel-collector:0.66.6
2022-03-22 00:03:20 +05:30
command : [ "--config=/etc/otel-collector-metrics-config.yaml" ]
volumes :
- ./otel-collector-metrics-config.yaml:/etc/otel-collector-metrics-config.yaml
2022-12-05 16:24:01 +05:30
# ports:
# - "1777:1777" # pprof extension
# - "8888:8888" # OtelCollector internal metrics
# - "13133:13133" # Health check extension
# - "55679:55679" # zPages extension
restart : on -failure
<< : *clickhouse-depends
2022-03-22 00:03:20 +05:30
hotrod :
2022-12-05 16:24:01 +05:30
image : jaegertracing/example-hotrod:1.30
container_name : hotrod
logging :
options :
max-size : 50m
max-file : "3"
command : [ "all" ]
environment :
- JAEGER_ENDPOINT=http://otel-collector:14268/api/traces
2022-03-22 00:03:20 +05:30
load-hotrod :
image : "grubykarol/locust:1.2.3-python3.9-alpine3.12"
container_name : load-hotrod
hostname : load-hotrod
environment :
ATTACKED_HOST : http://hotrod:8080
LOCUST_MODE : standalone
NO_PROXY : standalone
TASK_DELAY_FROM : 5
TASK_DELAY_TO : 30
QUIET_MODE : "${QUIET_MODE:-false}"
LOCUST_OPTS : "--headless -u 10 -r 1"
volumes :
2022-12-05 16:24:01 +05:30
- ../common/locust-scripts:/locust