-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose-base.yml
More file actions
133 lines (122 loc) · 3.7 KB
/
docker-compose-base.yml
File metadata and controls
133 lines (122 loc) · 3.7 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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
services:
postgres:
image: postgres:16
ports:
- '5432:5432'
environment:
POSTGRES_USER: dbuser
POSTGRES_PASSWORD: secret
POSTGRES_DB: purrfect-sitter
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U dbuser']
interval: 5s
timeout: 5s
retries: 5
openfga-postgres:
image: postgres:16
environment:
POSTGRES_USER: dbuser
POSTGRES_PASSWORD: secret
POSTGRES_DB: openfga
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U dbuser']
interval: 5s
timeout: 5s
retries: 5
openfga-migrate:
image: openfga/openfga:latest
command: migrate
environment:
OPENFGA_DATASTORE_URI: postgres://dbuser:secret@openfga-postgres:5432/openfga?sslmode=disable
volumes:
- ./infra/openfga/config.yml:/etc/openfga/config.yml
openfga:
image: openfga/openfga:latest
environment:
OPENFGA_DATASTORE_URI: postgres://dbuser:secret@openfga-postgres:5432/openfga?sslmode=disable
OPENFGA_LOG_FORMAT: json
volumes:
- ./infra/openfga/config.yml:/etc/openfga/config.yml
command: run
ports:
# Needed for the http server
- '8080:8080'
# Needed for the grpc server (if used)
- '8081:8081'
# Needed for the playground (Do not enable in prod!)
- '8082:3000'
kratos-postgres:
image: postgres:16
environment:
POSTGRES_USER: dbuser
POSTGRES_PASSWORD: secret
POSTGRES_DB: kratosdb
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U dbuser']
interval: 5s
timeout: 5s
retries: 5
kratos-migrate:
image: oryd/kratos:v1.3.1
environment:
DSN: postgres://dbuser:secret@kratos-postgres:5432/kratosdb?sslmode=disable
LOG_FORMAT: json
command: -c /etc/config/kratos/kratos.base.yml -c /etc/config/kratos/kratos.dev.yml migrate sql -e --yes
volumes:
- ./infra/ory-kratos:/etc/config/kratos:ro
kratos:
image: oryd/kratos:v1.3.1
ports:
- '4433:4433'
- '4434:4434'
restart: unless-stopped
environment:
DSN: postgres://dbuser:secret@kratos-postgres:5432/kratosdb?sslmode=disable
LOG_FORMAT: json
COURIER_SMTP_CONNECTION_URI: smtps://test:test@mailslurper:1025/?skip_ssl_verify=true
command: serve -c /etc/config/kratos/kratos.base.yml -c /etc/config/kratos/kratos.dev.yml --dev --watch-courier
volumes:
- ./infra/ory-kratos:/etc/config/kratos:ro
kratos-selfservice-ui-node:
image: oryd/kratos-selfservice-ui-node:v1.3.0
environment:
PORT: 4455
KRATOS_PUBLIC_URL: ${KRATOS_PUBLIC_DOCKER_URL:-http://host.docker.internal:4433}
KRATOS_BROWSER_URL: ${KRATOS_PUBLIC_URL:-http://127.0.0.1:4433}
KRATOS_ADMIN_URL: http://kratos:4434
COOKIE_SECRET: changeme
CSRF_COOKIE_NAME: cookie_name
CSRF_COOKIE_SECRET: changeme
DANGEROUSLY_DISABLE_SECURE_CSRF_COOKIES: true
# This is insecure and should only be used for development purposes
NODE_TLS_REJECT_UNAUTHORIZED: 0
ports:
- '4455:4455'
restart: on-failure
mailslurper:
image: oryd/mailslurper:latest-smtps
ports:
- '1025:1025'
- '4436:4436'
- '4437:4437'
collector:
image: otel/opentelemetry-collector-contrib:0.123.0
command: ['--config=/conf/collector-config.yml']
volumes:
- ./infra/otlp/collector-config.yml:/conf/collector-config.yml
ports:
- '55679:55679'
- '9464:9464'
- '4317:4317'
- '4318:4318'
zipkin:
image: openzipkin/zipkin:latest
ports:
- '9411:9411'
prometheus:
container_name: prometheus
image: prom/prometheus:latest
volumes:
- ./infra/otlp/prometheus.yml:/etc/prometheus/prometheus.yml
ports:
- '9090:9090'