-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathdocker-compose.yml
117 lines (114 loc) · 4.48 KB
/
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
107
108
109
110
111
112
113
114
115
116
117
version: "3.7"
x-logging:
&default-logging
driver: json-file
options:
max-size: "5g"
services:
postgres:
image: postgres:14.1
container_name: postgres${DOCKER_ID}
restart: unless-stopped
environment:
- PG_RANDOM_ID=${PG_RANDOM_ID}
- POSTGRES_DATABASE=${POSTGRES_DATABASE}
- POSTGRES_HOST_AUTH_METHOD=${POSTGRES_HOST_AUTH_METHOD}
- POSTGRES_HOST=${POSTGRES_HOST}
- POSTGRES_PORT=${POSTGRES_PORT}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_SOLANA_READER_DATABASE=${POSTGRES_SOLANA_READER_DATABASE}
volumes:
- ./pgdata:/var/lib/postgresql/data
- ./pg-init-scripts:/docker-entrypoint-initdb.d
networks:
- debridge-node-network
logging: *default-logging
solana-grpc-service:
image: debridgefinance/debridge-solana-events-reader-grpc-server:v0.9.5@sha256:f453d4f03bffce99b3373f829539c494ece4953f4492b12284cf628222b5e225
container_name: solana-grpc-service${DOCKER_ID}
restart: unless-stopped
networks:
- debridge-node-network
depends_on:
- postgres
environment:
- RUST_LOG=${RUST_LOG}
- DEBRIDGE_EVENTS_PSQL=${DEBRIDGE_SOLANA_EVENTS_PSQL}
- DEBRIDGE_EVENTS_API_SENTRY_URL=${DEBRIDGE_EVENTS_SENTRY_DSN}
logging: *default-logging
solana-events-reader:
image: debridgefinance/debridge-solana-events-reader:v0.9.5@sha256:f0ce004431c7d7d6d9c348babbb7d1574a18eaf15a86219e049763a4c450f71c
hostname: events-reader
restart: unless-stopped
networks:
- debridge-node-network
depends_on:
- postgres
environment:
- RUST_LOG=${RUST_LOG}
- DEBRIDGE_EVENTS_SOLANA_CLUSTER=${DEBRIDGE_EVENTS_SOLANA_CLUSTER}
- DEBRIDGE_EVENTS_SOLANA_WEBSOCKET_CLUSTER=${DEBRIDGE_EVENTS_SOLANA_WEBSOCKET_CLUSTER}
- DEBRIDGE_EVENTS_SOLANA_RESTART_WEBSOCKET_CLUSTERS=${DEBRIDGE_EVENTS_SOLANA_RESTART_WEBSOCKET_CLUSTERS}
- DEBRIDGE_EVENTS_RESYNC_SIGNATURES_CHUNK_SIZE=${DEBRIDGE_EVENTS_RESYNC_SIGNATURES_CHUNK_SIZE}
- DEBRIDGE_EVENTS_DB_REQUERY_TIMEOUT_IN_SEC=${DEBRIDGE_EVENTS_DB_REQUERY_TIMEOUT_IN_SEC}
- DEBRIDGE_EVENTS_HEARTBEAT_TIMEOUT_IN_SEC=${DEBRIDGE_EVENTS_HEARTBEAT_TIMEOUT_IN_SEC}
- DEBRIDGE_EVENTS_COMMITMENT_LEVEL=finalized
- DEBRIDGE_EVENTS_IS_INTERCEPT_SEND=true
- DEBRIDGE_EVENTS_IS_EXTERNAL_CALL_NEEDED=false
- DEBRIDGE_EVENTS_IS_INTERCEPT_CLAIM=false
- DEBRIDGE_EVENTS_IS_INTERCEPT_BRIDGE_CREATING=false
- DEBRIDGE_EVENTS_PSQL=${DEBRIDGE_SOLANA_EVENTS_PSQL}
- DEBRIDGE_SETTINGS_PROGRAM_PUBKEY=${DEBRIDGE_SETTINGS_PROGRAM_PUBKEY}
- DEBRIDGE_PROGRAM_PUBKEY=${DEBRIDGE_PROGRAM_PUBKEY}
- DEBRIDGE_EVENTS_API_SENTRY_URL=${DEBRIDGE_EVENTS_SENTRY_DSN}
- DEBRIDGE_EVENTS_CONSISTENCY_CHECK_TIMEOUT_SECS=${DEBRIDGE_EVENTS_CONSISTENCY_CHECK_TIMEOUT_SECS}
volumes:
- './.cache/solana-events/:/app/.debridge_events_cache'
logging: *default-logging
debridge-node:
image: debridgefinance/debridge-node:2.7.2@sha256:d63ab2a9b1af2c6797e930f4995c91f434477038ea7cb9310826a38052c1b5bf
container_name: debridge-node${DOCKER_ID}
restart: unless-stopped
secrets:
- source: keystore
target: /app/keystore.json
- source: bundlr_wallet
target: /app/bundlr_wallet.json
volumes:
- ./stats/debridge-node:/app/stats
- ./config:/app/dist/config
environment:
- PORT=${DEBRIDGE_NODE_PORT}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_HOST=${POSTGRES_HOST}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DATABASE=${POSTGRES_DATABASE}
- POSTGRES_PORT=${POSTGRES_PORT}
- KEYSTORE_PASSWORD=${KEYSTORE_PASSWORD}
- JWT_SECRET=${JWT_SECRET}
- API_BASE_URL=${API_BASE_URL}
- API_LOGIN=${API_LOGIN}
- API_PASSWORD=${API_PASSWORD}
- SENTRY_DSN=${SENTRY_DSN}
- NODE_OPTIONS=${DEBRIDGE_NODE_NODE_OPTIONS}
- THROTTLER_TTL=${THROTTLER_TTL}
- THROTTLER_LIMIT=${THROTTLER_LIMIT}
- WEB3_TIMEOUT=${WEB3_TIMEOUT}
- ENABLE_DATAFIX=${ENABLE_DATAFIX}
- BUNDLR_NODE=${BUNDLR_NODE}
- DEBRIDGE_EVENTS_CONSISTENCY_CHECK_TIMEOUT_SECS=${DEBRIDGE_EVENTS_CONSISTENCY_CHECK_TIMEOUT_SECS}
- SOLANA_GRPC_SERVICE_URL=${SOLANA_GRPC_SERVICE_URL}
depends_on:
- postgres
networks:
- debridge-node-network
logging: *default-logging
networks:
debridge-node-network:
name: debridge-node-network
secrets:
keystore:
file: ./secrets/keystore.json
bundlr_wallet:
file: ./secrets/bundlr_wallet.json