lasthourcloud/templates/compose/kuzzle.yaml
2024-02-21 14:30:32 +01:00

63 lines
1.9 KiB
YAML

# documentation: https://kuzzle.io
# slogan: Kuzzle is a generic backend offering the basic building blocks common to every application.
# tags: backend, api, realtime, websocket, mqtt, rest, sdk, iot, geofencing, low-code
services:
redis:
image: redis:7-alpine
command: redis-server --appendonly yes
volumes:
- elastic-redis-data:/data
healthcheck:
test: [ "CMD", "redis-cli", "ping" ]
interval: 5s
timeout: 20s
retries: 10
elasticsearch:
image: kuzzleio/elasticsearch:7
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:9200" ]
interval: 2s
timeout: 2s
retries: 10
ulimits:
nofile: 65536
kuzzle:
image: kuzzleio/kuzzle:latest
environment:
- SERVICE_FQDN_KUZZLE_7512
- kuzzle_services__storageEngine__client__node=http://elasticsearch:9200
- kuzzle_services__storageEngine__commonMapping__dynamic=true
- kuzzle_services__internalCache__node__host=redis
- kuzzle_services__memoryStorage__node__host=redis
- kuzzle_server__protocols__mqtt__enabled=true
- kuzzle_server__protocols__mqtt__developmentMode=false
- kuzzle_limits__loginsPerSecond=50
- NODE_ENV=production
# - DEBUG=${DEBUG:-kuzzle:*,-kuzzle:network:protocols:websocket,-kuzzle:events}
- DEBUG=${DEBUG:-kuzzle:cluster:sync}
- DEBUG_DEPTH=${DEBUG_DEPTH:-0}
- DEBUG_MAX_ARRAY_LENGTH=${DEBUG_MAX_ARRAY:-100}
- DEBUG_EXPAND=${DEBUG_EXPAND:-off}
- DEBUG_SHOW_HIDDEN={$DEBUG_SHOW_HIDDEN:-on}
- DEBUG_COLORS=${DEBUG_COLORS:-on}
cap_add:
- SYS_PTRACE
ulimits:
nofile: 65536
sysctls:
- net.core.somaxconn=8192
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:7512/_healthcheck" ]
timeout: 1s
interval: 2s
retries: 30
depends_on:
redis:
condition: service_healthy
elasticsearch:
condition: service_healthy