github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/tools/dev/loki-boltdb-storage-s3/docker-compose.yml (about) 1 version: '3.4' 2 services: 3 consul: 4 logging: &logging 5 driver: loki-compose 6 options: 7 loki-url: "http://localhost:8001/loki/api/v1/push" 8 loki-retries: "1" 9 loki-tenant-id: "1" 10 image: consul 11 command: [ "agent", "-dev" ,"-client=0.0.0.0", "-log-level=info" ] 12 ports: 13 - 8500:8500 14 15 minio: 16 logging: 17 <<: *logging 18 image: minio/minio:RELEASE.2022-03-11T23-57-45Z 19 entrypoint: sh 20 command: -c 'mkdir -p /data/loki && /opt/bin/minio server --console-address :9001 /data' 21 environment: 22 - MINIO_ACCESS_KEY=loki 23 - MINIO_SECRET_KEY=supersecret 24 ports: 25 - 9000:9000 26 - 9001:9001 27 volumes: 28 - .data-minio:/data:delegated 29 30 memcached: 31 logging: 32 <<: *logging 33 image: memcached:1.6 34 35 jaeger: 36 logging: 37 <<: *logging 38 image: jaegertracing/all-in-one 39 ports: 40 - 16686:16686 41 - "14268" 42 43 distributor: 44 logging: 45 <<: *logging 46 build: 47 context: . 48 dockerfile: dev.dockerfile 49 image: loki 50 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18001 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=distributor -server.http-listen-port=8001 -server.grpc-listen-port=9001"] 51 depends_on: 52 - ingester-1 53 - ingester-2 54 - consul 55 environment: 56 - JAEGER_AGENT_HOST=jaeger 57 - JAEGER_AGENT_PORT=6831 58 - JAEGER_TAGS=app=distributor 59 - JAEGER_SAMPLER_TYPE=const 60 - JAEGER_SAMPLER_PARAM=1 61 ports: 62 - 8001:8001 63 - 18001:18001 64 volumes: 65 - ./config:/loki/config 66 67 ingester-1: 68 logging: 69 <<: *logging 70 build: 71 context: . 72 dockerfile: dev.dockerfile 73 image: loki 74 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18002 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=ingester -server.http-listen-port=8002 -server.grpc-listen-port=9002"] 75 depends_on: 76 - consul 77 - minio 78 environment: 79 - JAEGER_AGENT_HOST=jaeger 80 - JAEGER_AGENT_PORT=6831 81 - JAEGER_TAGS=app=ingester-1 82 - JAEGER_SAMPLER_TYPE=const 83 - JAEGER_SAMPLER_PARAM=1 84 ports: 85 - 8002:8002 86 - 18002:18002 87 volumes: 88 - ./config:/loki/config 89 - .data-ingester-1:/data:delegated 90 91 ingester-2: 92 logging: 93 <<: *logging 94 build: 95 context: . 96 dockerfile: dev.dockerfile 97 image: loki 98 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18003 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=ingester -server.http-listen-port=8003 -server.grpc-listen-port=9003"] 99 depends_on: 100 - consul 101 - minio 102 environment: 103 - JAEGER_AGENT_HOST=jaeger 104 - JAEGER_AGENT_PORT=6831 105 - JAEGER_TAGS=app=ingester-2 106 - JAEGER_SAMPLER_TYPE=const 107 - JAEGER_SAMPLER_PARAM=1 108 ports: 109 - 8003:8003 110 - 18003:18003 111 volumes: 112 - ./config:/loki/config 113 - .data-ingester-2:/data:delegated 114 115 querier: 116 logging: 117 <<: *logging 118 build: 119 context: . 120 dockerfile: dev.dockerfile 121 image: loki 122 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18004 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=querier -server.http-listen-port=8004 -server.grpc-listen-port=9004 -querier.scheduler-address=query-scheduler:9009"] 123 depends_on: 124 - consul 125 - minio 126 - query-frontend 127 - query-scheduler 128 environment: 129 - JAEGER_AGENT_HOST=jaeger 130 - JAEGER_AGENT_PORT=6831 131 - JAEGER_TAGS=app=querier 132 - JAEGER_SAMPLER_TYPE=const 133 - JAEGER_SAMPLER_PARAM=1 134 ports: 135 - 8004:8004 136 - 18004:18004 137 volumes: 138 - ./config:/loki/config 139 - .data-querier:/data:delegated 140 141 index-gateway: 142 logging: 143 <<: *logging 144 build: 145 context: . 146 dockerfile: dev.dockerfile 147 image: loki 148 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18008 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=index-gateway -server.http-listen-port=8008 -server.grpc-listen-port=9008 -boltdb.shipper.query-ready-num-days=30"] 149 depends_on: 150 - consul 151 - minio 152 environment: 153 - JAEGER_AGENT_HOST=jaeger 154 - JAEGER_AGENT_PORT=6831 155 - JAEGER_TAGS=app=index-gateway 156 - JAEGER_SAMPLER_TYPE=const 157 - JAEGER_SAMPLER_PARAM=1 158 ports: 159 - 8008:8008 160 - 18008:18008 161 volumes: 162 - ./config:/loki/config 163 164 compactor: 165 logging: 166 <<: *logging 167 build: 168 context: . 169 dockerfile: dev.dockerfile 170 image: loki 171 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18006 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=compactor -server.http-listen-port=8006 -server.grpc-listen-port=9006"] 172 depends_on: 173 - consul 174 - minio 175 environment: 176 - JAEGER_AGENT_HOST=jaeger 177 - JAEGER_AGENT_PORT=6831 178 - JAEGER_TAGS=app=compactor 179 - JAEGER_SAMPLER_TYPE=const 180 - JAEGER_SAMPLER_PARAM=1 181 ports: 182 - 8006:8006 183 - 18006:18006 184 volumes: 185 - ./config:/loki/config 186 - .data-compactor:/data:delegated 187 188 query-frontend: 189 logging: 190 <<: *logging 191 build: 192 context: . 193 dockerfile: dev.dockerfile 194 image: loki 195 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18007 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=query-frontend -server.http-listen-port=8007 -server.grpc-listen-port=9007 -frontend.scheduler-address=query-scheduler:9009 -log.level=debug"] 196 depends_on: 197 - consul 198 - minio 199 - query-scheduler 200 environment: 201 - JAEGER_AGENT_HOST=jaeger 202 - JAEGER_AGENT_PORT=6831 203 - JAEGER_TAGS=app=query-frontend 204 - JAEGER_SAMPLER_TYPE=const 205 - JAEGER_SAMPLER_PARAM=1 206 ports: 207 - 8007:8007 208 - 18007:18007 209 volumes: 210 - ./config:/loki/config 211 212 query-scheduler: 213 logging: 214 <<: *logging 215 build: 216 context: . 217 dockerfile: dev.dockerfile 218 image: loki 219 command: ["sh", "-c", "sleep 3 && exec ./dlv exec ./loki --listen=:18009 --headless=true --api-version=2 --accept-multiclient --continue -- -config.file=./config/loki.yaml -target=query-scheduler -server.http-listen-port=8009 -server.grpc-listen-port=9009 -log.level=debug"] 220 depends_on: 221 - consul 222 - minio 223 environment: 224 - JAEGER_AGENT_HOST=jaeger 225 - JAEGER_AGENT_PORT=6831 226 - JAEGER_TAGS=app=query-scheduler 227 - JAEGER_SAMPLER_TYPE=const 228 - JAEGER_SAMPLER_PARAM=1 229 ports: 230 - 8009:8009 231 - 18009:18009 232 volumes: 233 - ./config:/loki/config 234 235 grafana: 236 logging: 237 <<: *logging 238 image: grafana/grafana 239 depends_on: 240 - query-frontend 241 - querier 242 environment: 243 - GF_PATHS_PROVISIONING=/etc/config/grafana/provisioning 244 - GF_AUTH_ANONYMOUS_ENABLED=true 245 - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin 246 ports: 247 - 3000:3000 248 volumes: 249 - ./config/datasource.yaml:/etc/config/grafana/provisioning/datasources/ds.yaml 250 251 log-gen: 252 logging: 253 <<: *logging 254 image: mingrammer/flog 255 command: ["-f", "json", "-l", "-d", "2s"] 256 depends_on: 257 - distributor 258 259 log-gen-2: 260 logging: 261 driver: loki-compose 262 options: 263 loki-url: "http://localhost:8001/loki/api/v1/push" 264 loki-retries: "1" 265 loki-tenant-id: "2" 266 image: mingrammer/flog 267 command: ["-f", "json", "-l", "-d", "2s"] 268 depends_on: 269 - distributor