@@ -12,12 +12,12 @@ services:
12
12
- ./.local-dev/keys:/keys
13
13
- ~/.ssh/known_hosts:/root/.ssh/known_hosts
14
14
labels :
15
- - " traefik.enable=true"
16
- - " traefik.http.routers.ns-gateway.rule=Host(`ns.local.trapti.tech`) && PathPrefix(`/neoshowcase.protobuf.APIService`)"
15
+ - ' traefik.enable=true'
16
+ - ' traefik.http.routers.ns-gateway.rule=Host(`ns.local.trapti.tech`) && PathPrefix(`/neoshowcase.protobuf.APIService`)'
17
17
# - "traefik.http.routers.ns-gateway.middlewares=ns_auth@file"
18
- - " traefik.http.routers.ns-gateway.middlewares=ns_auth_dev@file"
19
- - " traefik.http.routers.ns-gateway.service=ns-gateway"
20
- - " traefik.http.services.ns-gateway.loadbalancer.server.port=8080"
18
+ - ' traefik.http.routers.ns-gateway.middlewares=ns_auth_dev@file'
19
+ - ' traefik.http.routers.ns-gateway.service=ns-gateway'
20
+ - ' traefik.http.services.ns-gateway.loadbalancer.server.port=8080'
21
21
depends_on :
22
22
mysql :
23
23
condition : service_healthy
@@ -36,12 +36,12 @@ services:
36
36
- ./dashboard:/work
37
37
- /work/node_modules
38
38
labels :
39
- - " traefik.enable=true"
40
- - " traefik.http.routers.ns_dashboard.rule=Host(`ns.local.trapti.tech`)"
39
+ - ' traefik.enable=true'
40
+ - ' traefik.http.routers.ns_dashboard.rule=Host(`ns.local.trapti.tech`)'
41
41
# - "traefik.http.routers.ns_dashboard.middlewares=ns_auth@file"
42
- - " traefik.http.routers.ns_dashboard.middlewares=ns_auth_dev@file"
43
- - " traefik.http.routers.ns_dashboard.service=ns_dashboard"
44
- - " traefik.http.services.ns_dashboard.loadbalancer.server.port=80"
42
+ - ' traefik.http.routers.ns_dashboard.middlewares=ns_auth_dev@file'
43
+ - ' traefik.http.routers.ns_dashboard.service=ns_dashboard'
44
+ - ' traefik.http.services.ns_dashboard.loadbalancer.server.port=80'
45
45
networks :
46
46
- default
47
47
@@ -68,14 +68,14 @@ services:
68
68
ns-migrate :
69
69
condition : service_completed_successfully
70
70
labels :
71
- - " traefik.enable=true"
72
- - " traefik.http.routers.ns_controller_webhook.rule=Host(`ns.local.trapti.tech`) && PathPrefix(`/api/webhook`)"
73
- - " traefik.http.routers.ns_controller_webhook.service=ns_controller_webhook"
74
- - " traefik.http.services.ns_controller_webhook.loadbalancer.server.port=8080"
75
- - " traefik.tcp.routers.ns_controller.entrypoints=ns-ssh"
76
- - " traefik.tcp.routers.ns_controller.rule=HostSNI(`*`)"
77
- - " traefik.tcp.routers.ns_controller.service=ns_controller"
78
- - " traefik.tcp.services.ns_controller.loadbalancer.server.port=2201"
71
+ - ' traefik.enable=true'
72
+ - ' traefik.http.routers.ns_controller_webhook.rule=Host(`ns.local.trapti.tech`) && PathPrefix(`/api/webhook`)'
73
+ - ' traefik.http.routers.ns_controller_webhook.service=ns_controller_webhook'
74
+ - ' traefik.http.services.ns_controller_webhook.loadbalancer.server.port=8080'
75
+ - ' traefik.tcp.routers.ns_controller.entrypoints=ns-ssh'
76
+ - ' traefik.tcp.routers.ns_controller.rule=HostSNI(`*`)'
77
+ - ' traefik.tcp.routers.ns_controller.service=ns_controller'
78
+ - ' traefik.tcp.services.ns_controller.loadbalancer.server.port=2201'
79
79
networks :
80
80
- default
81
81
@@ -105,10 +105,10 @@ services:
105
105
volumes :
106
106
- ./.local-dev/config/ns-auth.yaml:/config.yaml
107
107
labels :
108
- - " traefik.enable=true"
109
- - " traefik.http.routers.ns_auth.rule=Host(`auth.local.trapti.tech`)"
110
- - " traefik.http.routers.ns_auth.service=ns_auth"
111
- - " traefik.http.services.ns_auth.loadbalancer.server.port=4181"
108
+ - ' traefik.enable=true'
109
+ - ' traefik.http.routers.ns_auth.rule=Host(`auth.local.trapti.tech`)'
110
+ - ' traefik.http.routers.ns_auth.service=ns_auth'
111
+ - ' traefik.http.services.ns_auth.loadbalancer.server.port=4181'
112
112
networks :
113
113
- default
114
114
@@ -120,7 +120,7 @@ services:
120
120
restart : always
121
121
environment :
122
122
HEADER : X-Showcase-User
123
- USER : " toki"
123
+ USER : ' toki'
124
124
networks :
125
125
- default
126
126
@@ -152,7 +152,7 @@ services:
152
152
context : .
153
153
target : ns
154
154
image : ghcr.io/traptitech/ns:main
155
- restart : " no "
155
+ restart : ' no '
156
156
entrypoint : cp /app/ns /ns-bin
157
157
volumes :
158
158
- binary:/ns-bin
@@ -188,14 +188,14 @@ services:
188
188
deploy :
189
189
resources :
190
190
limits :
191
- cpus : " 1 "
191
+ cpus : ' 1 '
192
192
193
193
static-server :
194
194
image : caddy:2-alpine
195
195
restart : always
196
196
environment :
197
197
# Do not bind to all addresses in production!
198
- CADDY_ADMIN : " :2019"
198
+ CADDY_ADMIN : ' :2019'
199
199
volumes :
200
200
- ./.local-dev/staticsite/artifacts:/artifacts
201
201
networks :
@@ -225,13 +225,13 @@ services:
225
225
context : .
226
226
target : ns-migrate
227
227
image : ghcr.io/traptitech/ns-migrate:main
228
- restart : " no "
228
+ restart : ' no '
229
229
environment :
230
- DB_HOST : " mysql"
231
- DB_PORT : " 3306"
232
- DB_USER : " root"
233
- DB_PASS : " password"
234
- DB_NAME : " neoshowcase"
230
+ DB_HOST : ' mysql'
231
+ DB_PORT : ' 3306'
232
+ DB_USER : ' root'
233
+ DB_PASS : ' password'
234
+ DB_NAME : ' neoshowcase'
235
235
depends_on :
236
236
mysql :
237
237
condition : service_healthy
@@ -242,36 +242,36 @@ services:
242
242
image : registry:2
243
243
restart : always
244
244
environment :
245
- REGISTRY_STORAGE_DELETE_ENABLED : " true"
245
+ REGISTRY_STORAGE_DELETE_ENABLED : ' true'
246
246
REGISTRY_HTTP_ADDR : :80
247
247
REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY : /var/lib/registry
248
248
GC_SCRIPT : /gc.sh
249
249
labels :
250
- - " traefik.enable=true"
251
- - " traefik.http.routers.registry.rule=Host(`registry.local`)"
252
- - " traefik.http.services.registry.loadbalancer.server.port=80"
250
+ - ' traefik.enable=true'
251
+ - ' traefik.http.routers.registry.rule=Host(`registry.local`)'
252
+ - ' traefik.http.services.registry.loadbalancer.server.port=80'
253
253
volumes :
254
254
- ./.local-dev/registry/entrypoint.sh:/entrypoint.sh
255
255
- ./.local-dev/registry/gc.sh:/gc.sh
256
256
- ./.local-dev/registry-data:/var/lib/registry
257
257
networks :
258
258
default :
259
259
aliases :
260
- - " registry.local"
260
+ - ' registry.local'
261
261
262
262
registry-frontend :
263
263
image : joxit/docker-registry-ui:2
264
264
restart : always
265
265
environment :
266
- SINGLE_REGISTRY : " true"
266
+ SINGLE_REGISTRY : ' true'
267
267
REGISTRY_TITLE : registry.local
268
268
NGINX_PROXY_PASS_URL : http://registry.local
269
- SHOW_CONTENT_DIGEST : " true"
270
- DELETE_IMAGES : " true"
269
+ SHOW_CONTENT_DIGEST : ' true'
270
+ DELETE_IMAGES : ' true'
271
271
labels :
272
- - " traefik.enable=true"
273
- - " traefik.http.routers.registry_frontend.rule=Host(`registry-frontend.local.trapti.tech`)"
274
- - " traefik.http.services.registry_frontend.loadbalancer.server.port=80"
272
+ - ' traefik.enable=true'
273
+ - ' traefik.http.routers.registry_frontend.rule=Host(`registry-frontend.local.trapti.tech`)'
274
+ - ' traefik.http.services.registry_frontend.loadbalancer.server.port=80'
275
275
networks :
276
276
- default
277
277
@@ -290,7 +290,7 @@ services:
290
290
volumes :
291
291
- ./.local-dev/mysql:/var/lib/mysql
292
292
ports :
293
- - " 5004:3306"
293
+ - ' 5004:3306'
294
294
networks :
295
295
- default
296
296
- apps
@@ -304,7 +304,7 @@ services:
304
304
volumes :
305
305
- ./.local-dev/mongo:/data/db
306
306
ports :
307
- - " 5010:27017"
307
+ - ' 5010:27017'
308
308
networks :
309
309
- default
310
310
- apps
@@ -316,19 +316,19 @@ services:
316
316
ADMINER_DEFAULT_SERVER : mysql
317
317
ADMINER_DESIGN : nette
318
318
labels :
319
- - " traefik.enable=true"
320
- - " traefik.http.routers.adminer.rule=Host(`adminer.local.trapti.tech`)"
321
- - " traefik.http.services.adminer.loadbalancer.server.port=8080"
319
+ - ' traefik.enable=true'
320
+ - ' traefik.http.routers.adminer.rule=Host(`adminer.local.trapti.tech`)'
321
+ - ' traefik.http.services.adminer.loadbalancer.server.port=8080'
322
322
networks :
323
323
- default
324
324
325
325
grafana :
326
326
image : grafana/grafana:11.1.3
327
327
restart : always
328
328
labels :
329
- - " traefik.enable=true"
330
- - " traefik.http.routers.grafana.rule=Host(`grafana.local.trapti.tech`)"
331
- - " traefik.http.services.grafana.loadbalancer.server.port=3000"
329
+ - ' traefik.enable=true'
330
+ - ' traefik.http.routers.grafana.rule=Host(`grafana.local.trapti.tech`)'
331
+ - ' traefik.http.services.grafana.loadbalancer.server.port=3000'
332
332
volumes :
333
333
- ./.local-dev/grafana:/var/lib/grafana
334
334
- ./.local-dev/config/grafana.ini:/etc/grafana/grafana.ini:ro
@@ -337,13 +337,13 @@ services:
337
337
338
338
loki :
339
339
image : grafana/loki:3.1.0
340
- command : " -config.file /etc/loki/loki.yaml"
340
+ command : ' -config.file /etc/loki/loki.yaml'
341
341
restart : always
342
342
labels :
343
343
# for debug
344
- - " traefik.enable=true"
345
- - " traefik.http.routers.loki.rule=Host(`loki.local.trapti.tech`)"
346
- - " traefik.http.services.loki.loadbalancer.server.port=3100"
344
+ - ' traefik.enable=true'
345
+ - ' traefik.http.routers.loki.rule=Host(`loki.local.trapti.tech`)'
346
+ - ' traefik.http.services.loki.loadbalancer.server.port=3100'
347
347
volumes :
348
348
- ./.local-dev/loki:/var/lib/loki
349
349
- ./.local-dev/config/loki.yaml:/etc/loki/loki.yaml:ro
@@ -352,7 +352,7 @@ services:
352
352
353
353
promtail :
354
354
image : grafana/promtail:3.1.0
355
- command : " -config.file /etc/promtail/promtail.yaml"
355
+ command : ' -config.file /etc/promtail/promtail.yaml'
356
356
restart : always
357
357
volumes :
358
358
- ./.local-dev/config/promtail.yaml:/etc/promtail/promtail.yaml
@@ -396,6 +396,8 @@ services:
396
396
- --provider.name=docker
397
397
volumes :
398
398
- /var/run/docker.sock:/var/run/docker.sock
399
+ - ./.local-dev/config/sablier.yaml:/etc/sablier/sablier.yaml
400
+ - ./dashboard/sablier-theme:/etc/sablier/themes
399
401
400
402
traefik :
401
403
image : traefik:3.1
@@ -420,22 +422,22 @@ services:
420
422
- --experimental.plugins.sablier.modulename=github.com/sablierapp/sablier
421
423
- --experimental.plugins.sablier.version=v1.8.1
422
424
ports :
423
- - " 80:80"
424
- - " 443:443"
425
- - " 2201:2201"
426
- - " 8080:8080"
427
- - " 9100:9100"
425
+ - ' 80:80'
426
+ - ' 443:443'
427
+ - ' 2201:2201'
428
+ - ' 8080:8080'
429
+ - ' 9100:9100'
428
430
volumes :
429
431
- /var/run/docker.sock:/var/run/docker.sock
430
432
- ./.local-dev/traefik:/opt/neoshowcase/conf
431
433
labels :
432
- - " traefik.enable=true"
433
- - " traefik.http.routers.traefik_dashboard.rule=Host(`traefik.local.trapti.tech`)"
434
- - " traefik.http.routers.traefik_dashboard.service=traefik_dashboard"
435
- - " traefik.http.services.traefik_dashboard.loadbalancer.server.port=8080"
436
- - " traefik.http.routers.traefik_metrics.rule=Host(`traefik.local.trapti.tech`) && PathPrefix(`/metrics`)"
437
- - " traefik.http.routers.traefik_metrics.service=traefik_metrics"
438
- - " traefik.http.services.traefik_metrics.loadbalancer.server.port=9100"
434
+ - ' traefik.enable=true'
435
+ - ' traefik.http.routers.traefik_dashboard.rule=Host(`traefik.local.trapti.tech`)'
436
+ - ' traefik.http.routers.traefik_dashboard.service=traefik_dashboard'
437
+ - ' traefik.http.services.traefik_dashboard.loadbalancer.server.port=8080'
438
+ - ' traefik.http.routers.traefik_metrics.rule=Host(`traefik.local.trapti.tech`) && PathPrefix(`/metrics`)'
439
+ - ' traefik.http.routers.traefik_metrics.service=traefik_metrics'
440
+ - ' traefik.http.services.traefik_metrics.loadbalancer.server.port=9100'
439
441
networks :
440
442
- default
441
443
- apps
0 commit comments