-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompose.yaml
More file actions
110 lines (101 loc) · 2.5 KB
/
Copy pathcompose.yaml
File metadata and controls
110 lines (101 loc) · 2.5 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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
name: airpc-e2e
services:
nats:
image: nats:2.10-alpine
command: ["-c", "/etc/nats/nats.conf"]
networks:
- broker
volumes:
- ./nats/nats.conf:/etc/nats/nats.conf:ro
healthcheck:
test: ["CMD", "wget", "-q", "-O", "-", "http://127.0.0.1:8222/healthz"]
interval: 2s
timeout: 2s
retries: 30
edge:
build:
context: ..
image: airpc:e2e
command: ["airpc", "edge", "start", "--config", "/etc/airpc/airpc.yaml"]
depends_on:
nats:
condition: service_healthy
networks:
- public
- broker
ports:
- "8080:8080"
- "7000:7000"
- "7003:7003"
volumes:
- ./airpc.yaml:/etc/airpc/airpc.yaml:ro
healthcheck:
test: ["CMD", "airpc-e2e", "wait-health", "--base-url", "http://127.0.0.1:8080", "--attempts", "1"]
interval: 2s
timeout: 2s
retries: 30
connector:
build:
context: ..
image: airpc:e2e
command: ["airpc", "connector", "start", "--config", "/etc/airpc/airpc.yaml", "--id", "compose"]
depends_on:
edge:
condition: service_healthy
http-backend:
condition: service_started
tcp-backend:
condition: service_started
websocket-backend:
condition: service_started
grpc-backend:
condition: service_started
networks:
- broker
- private
volumes:
- ./airpc.yaml:/etc/airpc/airpc.yaml:ro
http-backend:
build:
context: ..
image: airpc:e2e
command: ["airpc-e2e", "backend", "--mode", "http", "--addr", ":9000"]
networks:
- private
tcp-backend:
build:
context: ..
image: airpc:e2e
command: ["airpc-e2e", "backend", "--mode", "tcp", "--addr", ":9001"]
networks:
- private
websocket-backend:
build:
context: ..
image: airpc:e2e
command: ["airpc-e2e", "backend", "--mode", "websocket", "--addr", ":9002"]
networks:
- private
grpc-backend:
build:
context: ..
image: airpc:e2e
command: ["airpc-e2e", "backend", "--mode", "grpc", "--addr", ":9003"]
networks:
- private
test-runner:
build:
context: ..
image: airpc:e2e
profiles: ["tools"]
command: ["airpc-e2e", "check", "--base-url", "http://edge:8080", "--tcp-addr", "edge:7000", "--ws-url", "ws://edge:8080/ws", "--grpc-addr", "edge:7003"]
depends_on:
edge:
condition: service_healthy
networks:
- public
networks:
public: {}
broker: {}
private:
internal: true