-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
114 lines (106 loc) · 2.83 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
version: "3"
volumes:
conf:
data:
html:
ipfs:
vhost.d:
services:
db:
image: postgres:12-alpine
restart: unless-stopped
container_name: circles-db
healthcheck:
test: [ "CMD-SHELL", "pg_isready -h localhost -p ${POSTGRES_PORT} -U ${POSTGRES_USER}" ]
interval: 10s
timeout: 5s
retries: 100
command:
- "-cshared_preload_libraries=pg_stat_statements"
env_file:
- .env
environment:
- POSTGRES_INITDB_ARGS=-E UTF8 --locale=C
volumes:
- ./db/init-dbs.sh:/docker-entrypoint-initdb.d/init-dbs.sh
- data:/var/lib/postgresql/data
redis:
image: redis:6-alpine
container_name: circles-redis
ganache:
image: trufflesuite/ganache:latest
container_name: circles-ganache
ports:
- "8545:8545"
command:
[
"--wallet.deterministic",
"--chain.networkId", "5777",
"--server.host", "ganache",
"--wallet.totalAccounts", "10",
"--wallet.defaultBalance", "100000000000000000000",
"--miner.blockGasLimit", "10000000",
"--blockTime", "1"
]
nginx:
image: nginx:1-alpine
container_name: circles-nginx-proxy
depends_on:
- db
ports:
- "80:80"
volumes:
- conf:/etc/nginx/conf.d
- html:/usr/share/nginx/html
- vhost.d:/etc/nginx/vhost.d
gen:
image: jwilder/docker-gen:0.7.5
container_name: circles-nginx-gen
depends_on:
- nginx
volumes:
- conf:/etc/nginx/conf.d
- html:/usr/share/nginx/html
- vhost.d:/etc/nginx/vhost.d
- /var/run/docker.sock:/tmp/docker.sock:ro
- ./nginx-proxy/nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro
command: -notify-sighup circles-nginx-proxy -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
ipfs:
image: ipfs/go-ipfs:v0.4.23
container_name: circles-ipfs-node
ports:
- "5001:5001"
volumes:
- ipfs:/data/ipfs
graph:
image: graphprotocol/graph-node:v0.31.0
container_name: circles-graph-node
depends_on:
- db
- ipfs
ports:
- '8000:8000'
- '8001:8001'
- '8020:8020'
- '8030:8030'
- '8040:8040'
environment:
- VIRTUAL_HOST=${HOST_GRAPH_NODE}
- VIRTUAL_PORT=8000
- ethereum=${SUBGRAPH_NETWORK}:${ETHEREUM_NODE_ENDPOINT}
- ipfs=ipfs:5001
- postgres_db=${POSTGRES_DATABASE_GRAPH_NODE}
- postgres_host=${POSTGRES_HOST}
- postgres_port=${POSTGRES_PORT}
- postgres_pass=${POSTGRES_PASSWORD}
- postgres_user=${POSTGRES_USER}
- RUST_BACKTRACE=full
subgraph:
image: joincircles/circles-subgraph:v2.1.1
container_name: circles-subgraph
env_file:
- .env
environment:
- IPFS_NODE_ENDPOINT=http://ipfs:5001
- GRAPH_ADMIN_NODE_ENDPOINT=http://graph:8020
- ACCESS_TOKEN=123