name: social-app-local services: redis: image: redis:7-alpine container_name: social-local-redis restart: unless-stopped ports: - "127.0.0.1:${SOCIAL_REDIS__PORT:-6379}:6379" volumes: - redis_data:/data environment: REDIS_PASSWORD: ${SOCIAL_REDIS__PASSWORD:-} command: > sh -c 'if [ -n "$$REDIS_PASSWORD" ]; then redis-server --appendonly yes --requirepass "$$REDIS_PASSWORD"; else redis-server --appendonly yes; fi' healthcheck: test: [ "CMD", "sh", "-c", "if [ -n \"$$REDIS_PASSWORD\" ]; then redis-cli -a \"$$REDIS_PASSWORD\" ping; else redis-cli ping; fi", ] interval: 5s timeout: 3s retries: 5 volumes: redis_data: