-
Notifications
You must be signed in to change notification settings - Fork 111
Expand file tree
/
Copy pathcompose.yml
More file actions
156 lines (150 loc) · 5.63 KB
/
Copy pathcompose.yml
File metadata and controls
156 lines (150 loc) · 5.63 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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
services:
mailpit:
image: axllent/mailpit:v1.30.6
command: ["--smtp", "0.0.0.0:1025", "--listen", "0.0.0.0:8025"]
labels:
dev.orbstack.http-port: "8025"
livekit:
image: livekit/livekit-server:v1.13.5
environment:
LIVEKIT_CONFIG: |
port: 7880
rtc:
tcp_port: 7881
udp_port: 7882
use_external_ip: false
keys:
devkey: compose-only-livekit-secret-change-me
webhook:
urls:
- https://chatto.${COMPOSE_PROJECT_NAME}.orb.local/webhooks/livekit
api_key: devkey
logging:
level: info
labels:
dev.orbstack.http-port: "7880"
docs-website:
build:
context: .
dockerfile: apps/docs-website/Dockerfile
args:
CHATTO_DOCS_SITE_URL: https://docs-website.${COMPOSE_PROJECT_NAME}.orb.local
labels:
dev.orbstack.http-port: "8080"
storybook:
build:
context: .
dockerfile: apps/frontend/Dockerfile.storybook
labels:
dev.orbstack.http-port: "8080"
authling:
build:
context: .
dockerfile: authling/Dockerfile
command: ["run"]
init: true
depends_on:
mailpit:
condition: service_started
environment:
AUTHLING_HTTP_BIND_ADDRESS: 0.0.0.0:8080
AUTHLING_HTTP_PUBLIC_URL: https://authling.${COMPOSE_PROJECT_NAME}.orb.local
AUTHLING_AUTHENTICATION_PASSWORD_MINIMUM_LENGTH: "10"
AUTHLING_OIDC_CIMD_TRUSTED_PRIVATE_HOSTS: chatto.${COMPOSE_PROJECT_NAME}.orb.local
AUTHLING_NATS_REPLICAS: "1"
AUTHLING_NATS_EMBEDDED_ENABLED: "true"
AUTHLING_NATS_EMBEDDED_DATA_DIR: /data/nats
AUTHLING_SMTP_ENABLED: "true"
AUTHLING_SMTP_HOST: mailpit
AUTHLING_SMTP_PORT: "1025"
AUTHLING_SMTP_TLS: opportunistic
AUTHLING_SMTP_FROM: authling@authling.local
volumes:
- authling_data:/data
labels:
dev.orbstack.http-port: "8080"
healthcheck:
test: ["CMD", "wget", "--quiet", "--spider", "--header=Host: authling.${COMPOSE_PROJECT_NAME}.orb.local", "http://127.0.0.1:8080/"]
interval: 2s
timeout: 2s
retries: 30
start_period: 10s
chatto:
build:
context: .
dockerfile: docker/Dockerfile.compose
command: ["run"]
init: true
depends_on:
authling:
condition: service_healthy
livekit:
condition: service_started
mailpit:
condition: service_started
environment:
CHATTO_LOG_LEVEL: debug
CHATTO_LOG_FORMAT: text
CHATTO_WEBSERVER_URL: https://chatto.${COMPOSE_PROJECT_NAME}.orb.local
CHATTO_WEBSERVER_PORT: "4000"
CHATTO_WEBSERVER_COOKIE_SIGNING_SECRET: 871a846584490a6153305533cce100b8e6f39d4184c2fb499d2ed198a9ed37a3
CHATTO_WEBSERVER_COOKIE_ENCRYPTION_SECRET: a3955a342ba4cb4ffb457a1177295779fbbb73f8e22cd4f68ecb9fb584afcf66
CHATTO_FRONTEND_AUTHLING_ISSUER: https://authling.${COMPOSE_PROJECT_NAME}.orb.local
CHATTO_OPERATOR_API_ENABLED: "false"
CHATTO_SEARCH_ENABLED: "true"
CHATTO_SEARCH_PROVIDER_ENABLED: "true"
CHATTO_SEARCH_PROVIDER_DIRECTORY: /data/search
CHATTO_SEARCH_PROVIDER_LANGUAGES: de,en
CHATTO_CORE_SECRET_KEY: 2ff88b0e8ceb09c399193d1b9339577e6b0fac883777176231e84f92aa78f794
CHATTO_CORE_PROJECTION_SNAPSHOTS: "true"
CHATTO_CORE_ASSETS_SIGNING_SECRET: 2e5cac66f8ea81759952186886d233410c1e6e18e3048bc680792935206240e0
CHATTO_CORE_ASSETS_MAX_UPLOAD_SIZE: 25MB
CHATTO_CORE_ASSETS_CACHE_ENABLED: "true"
CHATTO_CORE_ASSETS_CACHE_TTL: 7d
CHATTO_AUTH_ACCOUNT_CREATION_POLICY: invite_only
CHATTO_AUTH_PROVIDERS_0_ID: authling
CHATTO_AUTH_PROVIDERS_0_TYPE: oidc
CHATTO_AUTH_PROVIDERS_0_LABEL: Authling
CHATTO_AUTH_PROVIDERS_0_ISSUER_URL: https://authling.${COMPOSE_PROJECT_NAME}.orb.local
CHATTO_AUTH_PROVIDERS_0_CLIENT_ID: https://chatto.${COMPOSE_PROJECT_NAME}.orb.local/oauth/client-metadata.json
CHATTO_AUTH_PROVIDERS_0_SCOPES: openid
CHATTO_AUTH_PROVIDERS_0_REQUEST_EMAIL: "false"
CHATTO_AUTH_PROVIDERS_0_AUTO_PROVISION: "true"
CHATTO_SMTP_ENABLED: "true"
CHATTO_SMTP_HOST: mailpit
CHATTO_SMTP_PORT: "1025"
CHATTO_SMTP_TLS: opportunistic
CHATTO_SMTP_FROM: chatto@chatto.local
CHATTO_VIDEO_ENABLED: "true"
CHATTO_ASSET_PROCESSING_ENABLED: "true"
CHATTO_LIVEKIT_ENABLED: "true"
CHATTO_LIVEKIT_URL: wss://livekit.${COMPOSE_PROJECT_NAME}.orb.local
CHATTO_LIVEKIT_API_KEY: devkey
CHATTO_LIVEKIT_API_SECRET: compose-only-livekit-secret-change-me
CHATTO_LIVEKIT_WEBHOOK_URL: https://chatto.${COMPOSE_PROJECT_NAME}.orb.local/webhooks/livekit
CHATTO_NATS_EMBEDDED_ENABLED: "true"
CHATTO_NATS_EMBEDDED_DATA_DIR: /data/nats
CHATTO_NATS_EMBEDDED_AUTH_TOKEN: a4a3102bf032b2d8ec14cf4c23fe54cb6a2054e1ad5e24aa4ada78768340e263
CHATTO_BOOTSTRAP_USERS_0_LOGIN: alice
CHATTO_BOOTSTRAP_USERS_0_DISPLAY_NAME: Alice
CHATTO_BOOTSTRAP_USERS_0_EMAIL: alice@example.com
CHATTO_BOOTSTRAP_USERS_0_PASSWORD: foobar123
CHATTO_BOOTSTRAP_USERS_0_SERVER_ROLE: owner
CHATTO_BOOTSTRAP_USERS_1_LOGIN: bob
CHATTO_BOOTSTRAP_USERS_1_DISPLAY_NAME: Bob
CHATTO_BOOTSTRAP_USERS_1_EMAIL: bob@example.com
CHATTO_BOOTSTRAP_USERS_1_PASSWORD: foobar123
CHATTO_BOOTSTRAP_SERVER_NAME: Chatto + Authling
volumes:
- chatto_data:/data
labels:
dev.orbstack.http-port: "4000"
healthcheck:
test: ["CMD", "wget", "--quiet", "--spider", "--header=Host: chatto.${COMPOSE_PROJECT_NAME}.orb.local", "http://127.0.0.1:4000/readyz"]
interval: 2s
timeout: 2s
retries: 60
start_period: 20s
volumes:
authling_data:
chatto_data: