-
Notifications
You must be signed in to change notification settings - Fork 180
/
docker-compose-deps.yml
140 lines (126 loc) · 3.41 KB
/
docker-compose-deps.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
version: '3'
services:
# Actual Speckle Server dependencies
postgres:
build:
context: .
dockerfile: utils/postgres/Dockerfile
restart: always
environment:
POSTGRES_DB: speckle
POSTGRES_USER: speckle
POSTGRES_PASSWORD: speckle
volumes:
- postgres-data:/var/lib/postgresql/data/
- ./setup/db/10-docker_postgres_init.sql:/docker-entrypoint-initdb.d/10-docker_postgres_init.sql
- ./setup/db/11-docker_postgres_keycloack_init.sql:/docker-entrypoint-initdb.d/11-docker_postgres_keycloack_init.sql
ports:
- '127.0.0.1:5432:5432'
postgres-region1:
build:
context: .
dockerfile: utils/postgres/Dockerfile
restart: always
environment:
POSTGRES_DB: speckle
POSTGRES_USER: speckle
POSTGRES_PASSWORD: speckle
volumes:
- postgres-region1-data:/var/lib/postgresql/data/
- ./setup/db/10-docker_postgres_init.sql:/docker-entrypoint-initdb.d/10-docker_postgres_init.sql
- ./setup/db/11-docker_postgres_keycloack_init.sql:/docker-entrypoint-initdb.d/11-docker_postgres_keycloack_init.sql
ports:
- '127.0.0.1:5401:5432'
redis:
image: 'redis:7-alpine'
restart: always
volumes:
- redis-data:/data
ports:
- '127.0.0.1:6379:6379'
minio:
image: 'minio/minio'
command: server /data --console-address ":9001"
restart: always
volumes:
- minio-data:/data
ports:
- '127.0.0.1:9000:9000'
- '127.0.0.1:9001:9001'
minio-region1:
image: 'minio/minio'
command: server /data --console-address ":9001"
restart: always
volumes:
- minio-region1-data:/data
ports:
- '127.0.0.1:9020:9000'
- '127.0.0.1:9021:9001'
# Local OIDC provider for testing
keycloak:
image: quay.io/keycloak/keycloak:25.0
depends_on:
- postgres
environment:
KC_DB: postgres
KC_DB_URL: jdbc:postgresql://postgres:5432/keycloak
KC_DB_USERNAME: speckle
KC_DB_PASSWORD: speckle
KC_HOSTNAME: 127.0.0.1
KC_HOSTNAME_PORT: 9000
KC_HOSTNAME_STRICT: false
KC_HOSTNAME_STRICT_HTTPS: false
KC_LOG_LEVEL: info
KC_METRICS_ENABLED: true
KC_HEALTH_ENABLED: true
KEYCLOAK_ADMIN: admin
KEYCLOAK_ADMIN_PASSWORD: admin
ports:
- 8443:8443
- 9010:9000
- 8090:8080
command: start-dev --import-realm
volumes:
- ./setup/keycloak:/opt/keycloak/data/import
# user: root
# command: export --dir /opt/keycloak/backup --realm speckle
# volumes:
# - ./keycloak-backup:/opt/keycloak/backup
# Local email server for email troubleshooting
maildev:
restart: always
image: maildev/maildev
ports:
- '127.0.0.1:1080:1080'
- '127.0.0.1:1025:1025'
# Useful for debugging / exploring local databases
pgadmin:
image: dpage/pgadmin4
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: [email protected]
PGADMIN_DEFAULT_PASSWORD: admin
volumes:
- pgadmin-data:/var/lib/pgadmin
ports:
- '127.0.0.1:16543:80'
depends_on:
- postgres
redis_insight:
image: redislabs/redisinsight:latest
restart: always
volumes:
- redis_insight-data:/db
ports:
- '127.0.0.1:8001:8001'
depends_on:
- redis
# Storage persistency
volumes:
postgres-data:
postgres-region1-data:
redis-data:
pgadmin-data:
redis_insight-data:
minio-data:
minio-region1-data: