-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathdev.docker-compose.yml
106 lines (102 loc) · 4.16 KB
/
dev.docker-compose.yml
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
services:
qubic-http:
image: ghcr.io/qubic/qubic-http:v0.5.0
container_name: qubic-http
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.qubic-http.headers.accesscontrolalloworiginlist=*"
- "traefik.http.routers.qubic-http.entrypoints=web"
- "traefik.http.routers.qubic-http.rule=(PathPrefix(`/v1/broadcast-transaction`) || PathPrefix(`/v1/tick-info`) || PathPrefix(`/v1/balances`))"
- "traefik.http.middlewares.qubic-http-stripprefix.stripprefix.prefixes=/v1"
- "traefik.http.routers.qubic-http.middlewares=qubic-archiver-stripprefix, cors"
- "traefik.http.middlewares.cors.headers.accesscontrolallowmethods=*"
- "traefik.http.middlewares.cors.headers.accesscontrolalloworiginlist=*"
- "traefik.http.middlewares.cors.headers.accesscontrolmaxage=300"
- "traefik.http.middlewares.cors.headers.addvaryheader=true"
- "traefik.http.services.qubic-http.loadbalancer.server.port=8000"
environment:
QUBIC_API_SIDECAR_SERVER_HTTP_HOST: "0.0.0.0:8000"
QUBIC_API_SIDECAR_SERVER_GRPC_HOST: "0.0.0.0:8001"
QUBIC_API_SIDECAR_SERVER_MAX_TICK_FETCH_URL: "http://qubic-nodes:8080/max-tick"
QUBIC_API_SIDECAR_POOL_NODE_FETCHER_URL: "http://qubic-nodes:8080/status"
QUBIC_API_SIDECAR_POOL_NODE_FETCHER_TIMEOUT: "20s"
networks:
- traefik
depends_on:
qubic-nodes:
condition: service_healthy
restart: always
qubic-archiver:
image: ghcr.io/qubic/qubic-archiver:dev
container_name: qubic-archiver
labels:
- "traefik.enable=true"
- "traefik.http.routers.qubic-archiver.rule=PathPrefix(`/v1`)"
- "traefik.http.middlewares.qubic-archiver-stripprefix.stripprefix.prefixes=/v1"
- "traefik.http.routers.qubic-archiver.middlewares=qubic-archiver-stripprefix, cors"
- "traefik.http.middlewares.cors.headers.accesscontrolallowmethods=*"
- "traefik.http.middlewares.cors.headers.accesscontrolalloworiginlist=*"
- "traefik.http.middlewares.cors.headers.accesscontrolmaxage=300"
- "traefik.http.middlewares.cors.headers.addvaryheader=true"
- "traefik.http.routers.qubic-archiver.entrypoints=web"
- "traefik.http.services.qubic-archiver.loadbalancer.server.port=8000"
- "traefik.http.services.qubic-archiver.loadbalancer.healthcheck.path=/healthcheck"
- "traefik.http.services.qubic-archiver.loadbalancer.healthcheck.interval=30s"
- "traefik.http.services.qubic-archiver.loadbalancer.healthcheck.timeout=5s"
- "traefik.http.services.qubic-archiver.loadbalancer.healthcheck.scheme=http"
ports:
- "127.0.0.1:8001:8000"
environment:
QUBIC_ARCHIVER_SERVER_HTTP_HOST: "0.0.0.0:8000"
QUBIC_ARCHIVER_SERVER_GRPC_HOST: "0.0.0.0:8001"
QUBIC_ARCHIVER_SERVER_NODE_SYNC_THRESHOLD: 3
QUBIC_ARCHIVER_SERVER_CHAIN_TICK_FETCH_URL: "http://qubic-nodes:8080/max-tick"
QUBIC_ARCHIVER_POOL_NODE_FETCHER_URL: "http://qubic-nodes:8080/status"
QUBIC_ARCHIVER_QUBIC_PROCESS_TICK_TIMEOUT: "5s"
volumes:
- ./store/archiver:/app/store
networks:
- traefik
depends_on:
qubic-nodes:
condition: service_healthy
restart: always
qubic-nodes:
image: ghcr.io/qubic/qubic-nodes:v1.0.2
container_name: qubic-nodes
ports:
- "127.0.0.1:8080:8080"
environment:
QUBIC_NODES_QUBIC_PEER_LIST: "5.39.222.64;82.197.173.130;82.197.173.129"
networks:
- traefik
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8080/status"]
interval: 30s
timeout: 5s
retries: 5
restart: always
traefik:
image: traefik:v2.5
container_name: traefik
command:
- "--log.level=DEBUG"
- "--api.insecure=true"
- "--metrics.prometheus=true"
- "--metrics.prometheus.buckets=0.1,0.3,1.2,5.0"
- "--providers.docker=true"
- "--providers.docker.watch"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
ports:
- "80:80"
- "127.0.0.1:8081:8080"
depends_on:
- "qubic-archiver"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- traefik
restart: always
networks:
traefik: