-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathcompose.yaml
More file actions
65 lines (60 loc) · 2.3 KB
/
compose.yaml
File metadata and controls
65 lines (60 loc) · 2.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
services:
solr:
image: solr:9-slim
ports:
- "8983:8983"
networks: [ search ]
environment:
ZK_HOST: "zoo:2181"
SOLR_HEAP: "1g"
depends_on: [ zoo ]
volumes:
- data:/var/solr
- ./mydata:/mydata
- ./init-solr.sh:/init-solr.sh
command: [ "bash", "/init-solr.sh" ]
zoo:
image: zookeeper:3.9
networks: [ search ]
environment:
ZOO_4LW_COMMANDS_WHITELIST: "mntr,conf,ruok"
# =============================================================================
# LGTM Stack - Grafana observability backend (Loki, Grafana, Tempo, Mimir)
# =============================================================================
# This all-in-one container provides:
# - Loki: Log aggregation (LogQL queries)
# - Grafana: Visualization at http://localhost:3000 (no auth required)
# - Tempo: Distributed tracing (TraceQL queries)
# - Mimir: Prometheus-compatible metrics storage
# - OpenTelemetry Collector: Receives OTLP data on ports 4317 (gRPC) and 4318 (HTTP)
#
# Spring Boot auto-configures OTLP endpoints when this container is running.
lgtm:
image: grafana/otel-lgtm:latest
ports:
- "3000:3000" # Grafana UI
- "4317:4317" # OTLP gRPC receiver
- "4318:4318" # OTLP HTTP receiver
networks: [ search ]
labels:
# Prevent Spring Boot auto-configuration from trying to manage this service
org.springframework.boot.ignore: "true"
volumes:
data:
networks:
search:
driver: bridge