{ "module": "redis", "version": "1", "provides": [ { "name": "redis-cache", "scope": "mesh" } ], "capabilities": [ "container-runtime" ], "serves": { "redis-cache": {} }, "receives": { "redis-cache": "/var/lib/redis-module/grants/mesh.json" }, "grants": { "redis-cache": "/var/lib/redis-module/grants" }, "own-secrets": { "default": "/var/lib/redis-module/default.secret" }, "listens": [ { "port": 6379, "protocol": "tcp", "from": "mesh", "why": "modules on any machine that were granted a cache" } ], "resources": [ { "id": "state", "type": "directory", "path": "/var/lib/redis-module", "mode": "0700" }, { "id": "grants-dir", "type": "directory", "path": "/var/lib/redis-module/grants", "mode": "0700" }, { "id": "data", "type": "directory", "path": "/services/redis/data", "mode": "0700", "owner": "999:999" }, { "id": "server-conf", "type": "file", "path": "/var/lib/redis-module/redis.conf", "mode": "0600", "content": "requirepass ${secret:default}\naclfile /data/users.acl\nappendonly yes\ndir /data\n", "owner": "999:999" }, { "id": "acl-seed", "type": "file", "path": "/services/redis/data/users.acl", "mode": "0600", "content": "", "owner": "999:999" }, { "id": "net", "type": "network", "name": "redis" }, { "id": "server", "type": "container", "name": "redis", "image": "redis@sha256:ff02b58f971e7d7d156a1267e283fcbbeee91773b6aa36c49dac28ecfe28eadf", "network": "redis", "ports": [ "6379" ], "volumes": [ "/services/redis/data:/data", "/var/lib/redis-module/redis.conf:/etc/redis/redis.conf:ro" ], "args": [ "/etc/redis/redis.conf" ] }, { "id": "provisioner", "type": "container", "name": "mesh-provision-redis", "image": "mesh-provision-redis@sha256:0000000000000000000000000000000000000000000000000000000000000000", "network": "redis", "env": { "GRANTS": "/var/lib/redis-module/grants", "MESH_PROVISION_REDIS": "redis:6379", "MESH_PROVISION_PASSWORD_FILE": "/run/secrets/default" }, "volumes": [ "/var/lib/redis-module/grants:/var/lib/redis-module/grants:ro", "/var/lib/redis-module/default.secret:/run/secrets/default:ro" ] } ] }