github.com/muhammadn/cortex@v1.9.1-0.20220510110439-46bb7000d03d/development/tsdb-blocks-storage-swift-single-binary/docker-compose.yml (about) 1 version: '3.4' 2 services: 3 4 consul: 5 image: consul 6 command: [ "agent", "-dev" ,"-client=0.0.0.0", "-log-level=info" ] 7 ports: 8 - 8500:8500 9 10 swift: 11 image: beaukode/docker-swift-onlyone-authv2-keystone 12 volumes: 13 - .data-swift:/srv:delegated 14 ports: 15 - 5000:5000 16 - 5001:5001 17 - 8080:8080 18 - 35357:35357 19 20 swift-create-container: 21 network_mode: host 22 image: theflockers/swiftclient 23 environment: 24 - OS_USERNAME=admin 25 - OS_PASSWORD=s3cr3t 26 - OS_TENANT_NAME=admin 27 - OS_AUTH_URL=http://localhost:5000/v2.0 28 - OS_REGION_NAME=RegionOne 29 command: ["sh", "-c", "sleep 30 && swift post cortex-rules && \ 30 swift post cortex-tsdb && swift list"] 31 32 prometheus: 33 network_mode: host 34 image: prom/prometheus:v2.16.0 35 command: ["--config.file=/etc/prometheus/prometheus.yaml"] 36 volumes: 37 - ./config:/etc/prometheus 38 ports: 39 - 9090:9090 40 41 # Scrape the metrics also with the Grafana agent (useful to test metadata ingestion 42 # until metadata remote write is not supported by Prometheus). 43 grafana-agent: 44 network_mode: host 45 image: grafana/agent:v0.2.0 46 command: ["-config.file=/etc/agent-config/grafana-agent.yaml", "-prometheus.wal-directory=/tmp"] 47 volumes: 48 - ./config:/etc/agent-config 49 ports: 50 - 9091:9091 51 52 jaeger: 53 image: jaegertracing/all-in-one 54 ports: 55 - 16686:16686 56 - "14268" 57 58 cortex-1: 59 network_mode: host 60 build: 61 context: . 62 dockerfile: dev.dockerfile 63 image: cortex 64 command: ["sh", "-c", "sleep 40 && exec ./cortex -config.file=./config/cortex.yaml -target=all -server.http-listen-port=8001 -server.grpc-listen-port=9001"] 65 depends_on: 66 - consul 67 - swift 68 environment: 69 - JAEGER_AGENT_HOST=jaeger 70 - JAEGER_AGENT_PORT=6831 71 - JAEGER_TAGS=app=cortex-1 72 - JAEGER_SAMPLER_TYPE=const 73 - JAEGER_SAMPLER_PARAM=1 74 ports: 75 - 8001:8001 76 volumes: 77 - ./config:/cortex/config 78 - .data-cortex-1:/data:delegated 79 80 cortex-2: 81 network_mode: host 82 build: 83 context: . 84 dockerfile: dev.dockerfile 85 image: cortex 86 command: ["sh", "-c", "sleep 40 && exec ./cortex -config.file=./config/cortex.yaml -target=all -server.http-listen-port=8002 -server.grpc-listen-port=9002"] 87 depends_on: 88 - consul 89 - swift 90 environment: 91 - JAEGER_AGENT_HOST=jaeger 92 - JAEGER_AGENT_PORT=6831 93 - JAEGER_TAGS=app=cortex-2 94 - JAEGER_SAMPLER_TYPE=const 95 - JAEGER_SAMPLER_PARAM=1 96 ports: 97 - 8002:8002 98 volumes: 99 - ./config:/cortex/config 100 - .data-cortex-2:/data:delegated