-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.dev.yaml
More file actions
86 lines (83 loc) · 2.08 KB
/
Copy pathdocker-compose.dev.yaml
File metadata and controls
86 lines (83 loc) · 2.08 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
services:
fixture:
image: node:24-alpine
init: true
working_dir: /work
command:
- node
- scripts/generate-receiver-fixture.mjs
- --seed
- ${IDENT_FIXTURE_SEED:-demo}
- --out
- /data
- --aircraft
- ${IDENT_FIXTURE_AIRCRAFT:-150}
- --live
- --interval-ms
- ${IDENT_FIXTURE_INTERVAL_MS:-1000}
volumes:
- .:/work:ro
- receiver-data:/data
healthcheck:
test:
- CMD-SHELL
- test -s /data/aircraft.json && test -s /data/receiver.json && test -s /data/stats.json && test -s /data/outline.json
interval: 2s
timeout: 1s
retries: 20
start_period: 2s
route-mock:
image: node:24-alpine
init: true
command:
- node
- --input-type=module
- -e
- |
import http from "node:http";
const server = http.createServer((req, res) => {
req.resume();
res.writeHead(200, { "content-type": "application/json; charset=utf-8" });
res.end("[]\n");
});
server.listen(8081, "0.0.0.0");
ident:
build:
context: .
dockerfile: Dockerfile
args:
VERSION: dev
COMMIT: ${IDENT_COMMIT:-dev}
BUILD_DATE: ${IDENT_BUILD_DATE:-dev}
image: ident:dev
depends_on:
fixture:
condition: service_healthy
route-mock:
condition: service_started
environment:
IDENT_ADDR: ":8080"
IDENT_DATA_DIR: "/run/readsb"
IDENT_RELAY_ROUTE_UPSTREAM: "http://route-mock:8081/routeset"
IDENT_STATION_NAME: "Dev"
IDENT_UPDATE_CHECK: "false"
IDENT_REPLAY_ENABLE: "true"
IDENT_REPLAY_DIR: "/var/lib/ident/replay"
IDENT_REPLAY_RETENTION_SEC: "86400"
IDENT_REPLAY_MAX_BYTES: "134217728"
ports:
- "${IDENT_DEV_PORT:-8080}:8080"
volumes:
- receiver-data:/run/readsb:ro
- replay-data:/var/lib/ident/replay
volumes:
receiver-data:
driver_opts:
type: tmpfs
device: tmpfs
o: size=64m
replay-data:
driver_opts:
type: tmpfs
device: tmpfs
o: size=128m