- Replaced deprecated lookup(vars=...) in svc-db-redis with macro-based include (Ansible/Jinja safe) - Redis now uses higher resource values (1 CPU, 1G reserved, 8G max, 512 pids) - Enables stable Whiteboard operation with >3.5 GB Redis memory usage - Related conversation: https://chatgpt.com/share/68f67a00-d598-800f-a6be-ee5987e66fba
Redis
Description
This Ansible role provides a Jinja2 snippet to inject a Redis service definition into your Docker Compose setup. It renders a service.yml.j2 template that defines a redis container with sensible defaults.
Overview
The role’s service.yml.j2 template includes:
-
An Alpine-based Redis image (
redis:alpine) -
Container naming based on
application_id(defaults toredis) -
Restart policy
-
Journald logging driver
-
A named volume (
redis:/data) for persistence -
A basic healthcheck using
redis-cli ping -
Attachment to the default network
Include this snippet in your top-level docker-compose.yml.j2 where you want Redis to appear.
Features
-
Configurable
application_id
Sets container name ({{ application_id }}-redis). -
Restart policy
Controlled byDOCKER_RESTART_POLICY. -
Journald logging
Ensures logs are captured by systemd’s journal. -
Persistent storage
Declares and mountsredis:/data. -
Built-in healthcheck
Usesredis-cli pingwith configurable intervals and retries.