-
Notifications
You must be signed in to change notification settings - Fork 23
/
docker-compose.yml
84 lines (78 loc) · 2.23 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
services:
api:
build:
context: .
dockerfile: Dockerfile.dev
user: node
command: pnpm start
restart: always
volumes:
- ./:/usr/src/app
# IMPORTANT: If you are using Windows, you might want to uncomment the entry below.
# https://jdlm.info/articles/2019/09/06/lessons-building-node-app-docker.html#the-node_modules-volume-trick
# - ./docker-volumes/node_modules:/usr/src/app/node_modules # https://stackoverflow.com/a/32785014
depends_on:
- supertokens
- db
ports:
- '8080:8080'
- '9229:9229'
tty: true
environment:
POSTGRES_CONNECTION_URL: postgresql://postgres:password@db:5432/db
REDIS_CONNECTION_URL: redis://redis
db:
image: postgres:16-alpine
user: root
restart: always
ports:
- '5432:5432'
environment:
POSTGRES_PASSWORD: password
POSTGRES_DB: db
volumes:
- ./docker-volumes/postgres:/var/lib/postgresql/data
# https://www.pgadmin.org/docs/pgadmin4/6.5/container_deployment.html
pgadmin:
image: dpage/pgadmin4:latest
user: root
restart: always
ports:
- '8888:80'
environment:
PGADMIN_DEFAULT_EMAIL: [email protected]
PGADMIN_DEFAULT_PASSWORD: password
volumes:
- ./docker-volumes/pgadmin:/var/lib/pgadmin
redis:
image: redis:7-alpine
user: root
restart: always
ports:
- '6379:6379'
volumes:
- ./docker-volumes/redis:/data
redis-commander:
image: rediscommander/redis-commander:latest
user: root
restart: always
ports:
- '8889:8081'
environment:
- REDIS_HOSTS=local:redis:6379
supertokens:
image: supertokens/supertokens-postgresql:9.0
user: root
restart: always
environment:
# IMPORTANT:
# Make sure to adjust this accordingly if you plan to test
# other than the local database
POSTGRESQL_CONNECTION_URI: 'postgresql://postgres:password@db:5432/db'
POSTGRESQL_TABLE_SCHEMA: 'supertokens'
# IMPORTANT:
# On Production, make sure to set a secure API KEY
# Read more here: https://supertokens.io/docs/session/common-customizations/core/api-keys
API_KEYS: 'graphql-starter-supertokens-api-key'
ports:
- '3567:3567'