-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathdocker-compose.yaml
72 lines (68 loc) · 2.53 KB
/
docker-compose.yaml
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
version: "3.7"
services:
api:
image: ${API_IMAGE:-us-east1-docker.pkg.dev/athenian-1/images/api:latest}
restart: unless-stopped
entrypoint: [
"/bin/sh", "-c",
"python3 -m athenian.api.models.state \
postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/state &&
python3 -m athenian.api.models.precomputed \
postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/precomputed &&
python3 -m athenian.api.models.persistentdata \
postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/persistentdata &&
python3 -m athenian.api.models.metadata \
postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/metadata &&
python3 -m athenian.api \
--log-level=${API_LOG_LEVEL:-INFO} \
--host=0.0.0.0 \
--port=8080 \
--memcached=memcached:11211 \
--metadata-db=postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/metadata \
--state-db=postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/state \
--precomputed-db=postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/precomputed \
--persistentdata-db=postgresql://${POSTGRES_USER:-api}:${POSTGRES_PASSWORD:-api}@postgres:5432/persistentdata \
--ui \
--no-google-kms"
]
env_file: .env
ports:
- ${API_HOST_PORT:-8080}:8080
depends_on:
- postgres
- memcached
memcached:
image: launcher.gcr.io/google/memcached1
restart: unless-stopped
command: ['memcached', '-m', '1024M', '-I', '128M']
ports:
- ${MEMCACHED_HOST_PORT:-11211}:11211
postgres:
image: postgres:13
restart: unless-stopped
environment:
POSTGRES_USER: ${POSTGRES_USER:-api}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-api}
POSTGRES_SOURCE_HOST: cloud_sql_proxy
POSTGRES_SOURCE_PORT: 5432
shm_size: 512mb
ports:
- ${POSTGRES_HOST_PORT:-5432}:5432
volumes:
- postgres:/var/lib/postgresql/data
- ${POSTGRES_DUMPS_PATH:-./server/tests/dumps}:/db_dumps
- ${POSTGRES_LOADER_SCRIPT_PATH:-./server/tests/load_pg_data.sh}:/load_data.sh
depends_on:
- cloud_sql_proxy
cloud_sql_proxy:
image: atholeque/goterracloud
restart: unless-stopped
command: [
'cloud_sql_proxy',
'-instances=${CLOUD_SQL_INSTANCE}=tcp:0.0.0.0:5432',
]
volumes:
- ~/.config/gcloud:/root/.config/gcloud
volumes:
postgres:
external: false