76 lines
2.1 KiB
YAML
76 lines
2.1 KiB
YAML
x-service-base: &service-base
|
|
user: ${UID:?UID missing}:${GID:?GID missing}
|
|
tty: true
|
|
|
|
x-volume-app: &volume-app ./:/app/
|
|
|
|
x-env-base: &env-base
|
|
TZ: ${TZ:?TZ missing}
|
|
|
|
|
|
services:
|
|
server:
|
|
<<: *service-base
|
|
image: oven/bun:1.3.9@sha256:856da45d07aeb62eb38ea3e7f9e1794c0143a4ff63efb00e6c4491b627e2a521
|
|
volumes:
|
|
- *volume-app
|
|
working_dir: /app/packages/server
|
|
env_file: .env
|
|
environment:
|
|
<<: *env-base
|
|
entrypoint: ["bun", "dev:bun"]
|
|
|
|
cli:
|
|
<<: *service-base
|
|
image: oven/bun:1.3.9@sha256:856da45d07aeb62eb38ea3e7f9e1794c0143a4ff63efb00e6c4491b627e2a521
|
|
volumes:
|
|
- *volume-app
|
|
working_dir: /app
|
|
env_file: .env
|
|
environment:
|
|
<<: *env-base
|
|
NODE_ENV: development
|
|
entrypoint: ["/bin/bash"]
|
|
stop_signal: SIGKILL
|
|
|
|
webapp:
|
|
<<: *service-base
|
|
image: node:22.22.0@sha256:379c51ac7bbf9bffe16769cfda3eb027d59d9c66ac314383da3fcf71b46d026c
|
|
ports:
|
|
- ${PORT:?PORT missing}:80
|
|
volumes:
|
|
- *volume-app
|
|
working_dir: /app/packages/webapp
|
|
environment:
|
|
<<: *env-base
|
|
entrypoint: ["npm", "run", "dev"]
|
|
stop_signal: SIGKILL
|
|
|
|
tempo:
|
|
<<: *service-base
|
|
image: grafana/tempo:latest@sha256:e53e4f688277351e7b8102116d3606be937d81d40e71b2279d0869b4535082b4
|
|
command: [-config.file=/etc/tempo.yaml]
|
|
volumes:
|
|
- ./telemetry/tempo.yaml:/etc/tempo.yaml
|
|
- ./tempo_data/:/data/
|
|
stop_signal: SIGKILL
|
|
|
|
prometheus:
|
|
image: prom/prometheus:v3.9.1@sha256:1f0f50f06acaceb0f5670d2c8a658a599affe7b0d8e78b898c1035653849a702
|
|
command:
|
|
- --config.file=/etc/prometheus.yaml
|
|
- --web.enable-remote-write-receiver
|
|
- --enable-feature=exemplar-storage
|
|
volumes:
|
|
- ./telemetry/prometheus.yaml:/etc/prometheus.yaml
|
|
|
|
grafana:
|
|
image: grafana/grafana:latest@sha256:62a54c76afbeea0b8523b7afcd9e7ee1f0e39806035fd90ffc333a19e9358f2f
|
|
volumes:
|
|
- ./telemetry/grafana-datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml
|
|
environment:
|
|
GF_AUTH_ANONYMOUS_ENABLED: true
|
|
GF_AUTH_ANONYMOUS_ORG_ROLE: Admin
|
|
GF_AUTH_DISABLE_LOGIN_FORM: true
|
|
GF_FEATURE_TOGGLES_ENABLE: traceqlEditor
|