authelia/internal/suites/example/compose/redis-sentinel/docker-compose.yml

96 lines
2.6 KiB
YAML
Raw Normal View History

feat(session): add redis sentinel provider (#1768) * feat(session): add redis sentinel provider * refactor(session): use int for ports as per go standards * refactor(configuration): adjust tests and validation * refactor(configuration): add err format consts * refactor(configuration): explicitly map redis structs * refactor(session): merge redis/redis sentinel providers * refactor(session): add additional checks to redis providers * feat(session): add redis cluster provider * fix: update config for new values * fix: provide nil certpool to affected tests/mocks * test: add additional tests to cover uncovered code * docs: expand explanation of host and nodes relation for redis * ci: add redis-sentinel to suite highavailability, add redis-sentinel quorum * fix(session): sentinel password * test: use redis alpine library image for redis sentinel, use expose instead of ports, use redis ip, adjust redis ip range, adjust redis config * test: make entrypoint.sh executable, fix entrypoint.sh if/elif * test: add redis failover tests * test: defer docker start, adjust sleep, attempt logout before login, attempt visit before login and tune timeouts, add additional logging * test: add sentinel integration test * test: add secondary node failure to tests, fix password usage, bump test timeout, add sleep * feat: use sentinel failover cluster * fix: renamed addrs to sentineladdrs upstream * test(session): sentinel failover * test: add redis standard back into testing * test: move redis standalone test to traefik2 * fix/docs: apply suggestions from code review
2021-03-09 23:03:05 +00:00
version: '3'
services:
redis-node-0:
image: redis:6.2-alpine
command: /entrypoint.sh master
expose:
- "6379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/users.acl:/data/users.acl
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-node-0.example.com
ipv4_address: 192.168.240.110
redis-node-1:
image: redis:6.2-alpine
command: /entrypoint.sh slave
depends_on:
- redis-node-0
expose:
- "6379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/users.acl:/data/users.acl
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-node-1.example.com
ipv4_address: 192.168.240.111
redis-node-2:
image: redis:6.2-alpine
command: /entrypoint.sh slave
depends_on:
- redis-node-0
expose:
- "6379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/users.acl:/data/users.acl
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-node-2.example.com
ipv4_address: 192.168.240.112
redis-sentinel-0:
image: redis:6.2-alpine
command: /entrypoint.sh sentinel
depends_on:
- redis-node-1
- redis-node-2
expose:
- "26379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-sentinel-0.example.com
ipv4_address: 192.168.240.120
redis-sentinel-1:
image: redis:6.2-alpine
command: /entrypoint.sh sentinel
depends_on:
- redis-node-1
- redis-node-2
expose:
- "26379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-sentinel-1.example.com
ipv4_address: 192.168.240.121
redis-sentinel-2:
image: redis:6.2-alpine
command: /entrypoint.sh sentinel
depends_on:
- redis-node-1
- redis-node-2
expose:
- "26379"
volumes:
- ./example/compose/redis/templates:/templates
- ./example/compose/redis/entrypoint.sh:/entrypoint.sh
networks:
authelianet:
aliases:
- redis-sentinel-2.example.com
ipv4_address: 192.168.240.122