-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
119 lines (119 loc) · 3.28 KB
/
docker-compose.yml
File metadata and controls
119 lines (119 loc) · 3.28 KB
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
volumes:
postgres-data:
mailpit-data:
services:
mailpit:
image: docker.io/axllent/mailpit
profiles: ["smtp", "dev"]
restart: unless-stopped
volumes:
- mailpit-data:/data
ports:
- 8025:8025
- 1025:1025
environment:
MP_MAX_MESSAGES: 5000
MP_DATABASE: /data/mailpit.db
MP_SMTP_AUTH_ACCEPT_ANY: 1
MP_SMTP_AUTH_ALLOW_INSECURE: 1
healthcheck:
test: ["CMD", "/mailpit", "readyz"]
interval: 15s
retries: 5
start_period: 10s
timeout: 10s
postgres:
image: docker.io/postgres:${POSTGRES_VERSION:-18}
restart: unless-stopped
environment:
POSTGRES_USER: project_w
POSTGRES_DB: project_w
POSTGRES_HOST_AUTH_METHOD: trust
command: ["postgres", "-c", "log_statement=all", "-c", "log_connections=true", "-c", "log_disconnections=true"]
volumes:
- postgres-data:/var/lib/postgresql
ports:
- 5432:5432
healthcheck:
test: ["CMD", "pg_isready", "-U", "project_w", "-d", "project_w"]
interval: 15s
retries: 5
start_period: 10s
timeout: 10s
pgadmin:
image: docker.io/dpage/pgadmin4
profiles: ["dev"]
restart: unless-stopped
environment:
PGADMIN_DEFAULT_EMAIL: user@example.com
PGADMIN_DEFAULT_PASSWORD: Password1234
PGADMIN_REPLACE_SERVERS_ON_STARTUP: True
PGADMIN_CONFIG_SERVER_MODE: False
PGADMIN_CONFIG_MASTER_PASSWORD_REQUIRED: False
volumes:
- ./dev-setup_files/pgadmin_servers.json:/pgadmin4/servers.json:ro
ports:
- 8080:80
redis:
image: docker.io/redis:${REDIS_VERSION:-8}
restart: unless-stopped
ports:
- 6379:6379
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 15s
retries: 5
start_period: 10s
timeout: 10s
redisinsight:
image: docker.io/redis/redisinsight
profiles: ["dev"]
restart: unless-stopped
environment:
RI_DATABASE_MANAGEMENT: false
RI_REDIS_HOST: redis
RI_REDIS_PORT: 6379
ports:
- 5540:5540
openldap:
image: docker.io/osixia/openldap
restart: unless-stopped
environment:
LDAP_BASE_DN: "dc=example,dc=org"
LDAP_ORGANISATION: "Example Organization"
LDAP_DOMAIN: "example.org"
LDAP_ADMIN_PASSWORD: "admin"
LDAP_TLS: "false"
volumes:
- ./dev-setup_files/ldap_users.ldif:/container/service/slapd/assets/config/bootstrap/ldif/custom/50-ldap_users.ldif
ports:
- 3000:389
command:
--copy-service --loglevel debug
healthcheck:
test: ["CMD", "cat", "/run/slapd/slapd.pid"]
interval: 15s
retries: 5
start_period: 10s
timeout: 10s
keycloak:
image: quay.io/keycloak/keycloak
restart: unless-stopped
environment:
KC_BOOTSTRAP_ADMIN_USERNAME: admin
KC_BOOTSTRAP_ADMIN_PASSWORD: admin
volumes:
- ./dev-setup_files/keycloak_realm.json:/opt/keycloak/data/import/realm.json
command:
- start-dev
- --import-realm
- --log-level=debug
- --health-enabled=true
ports:
- 8081:8080
healthcheck:
test: ["CMD-SHELL", "bash -c \"{ printf 'HEAD /health/ready HTTP/1.0\\r\\n\\r\\n' >&0; grep 'HTTP/1.0 200'; } 0<>/dev/tcp/localhost/9000\""]
interval: 15s
retries: 20
start_period: 20s
timeout: 10s