---
redis:
modes:
compose:
enabled: true
swarm:
enabled: true
# nocheck: default-placement-manager central cache engine, node-local on-disk state (ACL file + optional AOF), single-node until redis replication is in scope
placement: manager
bond: 1
enabled: true
shared: true
image: redis
name: redis-central
version: 8.10.3-alpine
min_storage: 238MB
healthcheck:
test: ["CMD-SHELL", "REDISCLI_AUTH=\"$$REDIS_PASSWORD\" redis-cli ping | grep -q PONG"]
retries: 30
backup:
disabled: true
cpus: "0.5"
mem_reservation: "128m"
mem_limit: "512m"
pids_limit: 512
ports:
local:
redis: 6379
internal:
redis: 6379
onion:
# nocheck: onion-flag the shared cache and queue runs without AUTH inside the stack, so its reachability must stay bounded by the role network
redis: false
lifecycle: beta
# nocheck: variants-coverage β sso-variant-tor requires the onion on in every variant, so the false polarity has no variant left to live in
tor:
bond: 0.5
enabled: "{{ 'svc-net-tor' in group_names }}"
shared: true # nocheck: dynamic-flag
# nocheck: dynamic-flag - the redis volume is backup-disabled ephemeral cache state, the backup consumer stays permanently off
container_backup:
enabled: false
shared: true
# nocheck: variants-coverage the role has a single variant, and the guide edge is not a dimension of it: a second round would differ only by the README replay
docs:
bond: 0.5
enabled: "{{ 'web-app-docs' in group_names }}"
shared: "{{ 'web-app-docs' in group_names }}"