forked from boltcard/boltcard-lndhub-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose-groundcontrol.yml
143 lines (143 loc) · 3.78 KB
/
docker-compose-groundcontrol.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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
version: '3'
services:
boltcard:
build:
context: ./boltcard
dockerfile: Dockerfile
container_name: boltcard_main
depends_on:
- db
restart: unless-stopped
environment:
- LOG_LEVEL=DEBUG
- DB_HOST=db
- DB_USER=cardapp
- DB_PASSWORD=password
- DB_PORT=5432
- DB_NAME=card_db
expose:
- "9000"
- "9001"
volumes:
- ${PWD}/tls.cert:/boltcard/tls.cert
- ${PWD}/admin.macaroon:/boltcard/admin.macaroon
networks:
- boltnet
db:
image: postgres
container_name: boltcard_db
restart: unless-stopped
environment:
- POSTGRES_USER=cardapp
- POSTGRES_PASSWORD=password
- POSTGRES_DB=card_db
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- db-data:/var/lib/postgresql/data
- ./boltcard/sql/select_db.sql:/docker-entrypoint-initdb.d/select_db.sql
- ./boltcard/sql/create_db.sql:/docker-entrypoint-initdb.d/create_db.sql
- ./settings.sql:/docker-entrypoint-initdb.d/settings.sql
expose:
- "5432"
networks:
- boltnet
redis:
container_name: boltcard_redis
image: redis:6.2-buster
command: redis-server --requirepass ${REDIS_PASSWORD}
restart: on-failure
stop_grace_period: 5m
stop_signal: SIGINT
volumes:
- boltcard_redis:/data
networks:
- boltnet
web:
container_name: boltcard_hub
build:
context: ./BoltCardHub
dockerfile: Dockerfile
depends_on: [ redis ]
restart: on-failure
stop_grace_period: 5m30s
stop_signal: SIGINT
expose:
- "9002"
volumes:
- boltcard_hub_lnd:/lnd:ro
environment:
PORT: "9002"
LND_CERT_FILE: "/lnd/tls.cert"
LND_ADMIN_MACAROON_FILE: "/lnd/data/chain/bitcoin/mainnet/admin.macaroon"
CONFIG: '{
"enableUpdateDescribeGraph": false,
"postRateLimit": 100,
"rateLimit": 200,
"forwardReserveFee": 0.01,
"intraHubFee": 0.003,
"redis": { "port": 6379, "host": "boltcard_redis", "family": 4, "password": "$REDIS_PASSWORD", "db": 0 },
"lnd": { "url": "$LND_IP:$LND_GRPC_PORT", "password": "$LND_PASSWORD"},
"boltcardservice": { "url": "http://boltcard_main:9001", "service_url": "http://boltcard_main:9000" }
}'
GROUNDCONTROL: "http://groundcontrol:3001"
volumes:
- ./tls.cert:/lnd/tls.cert
- ./admin.macaroon:/lnd/data/chain/bitcoin/mainnet/admin.macaroon
networks:
- boltnet
webserver:
image: caddy
container_name: boltcard_caddy
restart: unless-stopped
ports:
- "8082:8082"
- "8083:8083"
- "8888:8888"
- "443:443"
volumes:
- ${PWD}/CaddyfileGroundControl:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
networks:
- boltnet
groundcontrol_db:
image: mariadb:latest
container_name: groundcontrol_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: mariadb_password
MYSQL_DATABASE: groundcontrol
MYSQL_USER: groundcontrol
MYSQL_PASSWORD: groundcontrol
networks:
- boltnet
volumes:
- groundcontrol_db:/var/lib/mysql
groundcontrol:
container_name: groundcontrol
expose:
- "3001"
build:
context: ./
dockerfile: GroundControlDockerfile
depends_on: [ groundcontrol_db ]
environment:
JAWSDB_MARIA_URL: mysql://groundcontrol:groundcontrol@groundcontrol_db:3306/groundcontrol
FCM_SERVER_KEY: $FCM_SERVER_KEY
APNS_P8: $APNS_P8
APNS_P8_KID: $APNS_P8_KID
APPLE_TEAM_ID: $APPLE_TEAM_ID
APNS_TOPIC: $APNS_TOPIC
networks:
- boltnet
networks:
boltnet:
volumes:
db-data:
boltcard_hub_lnd:
external: true
boltcard_redis:
caddy_data:
external: true
caddy_config:
groundcontrol_db: