--- x-default-image: &default-image ${CLIENT_LIBS_TEST_IMAGE:-redislabs/client-libs-test:8.6.0} services: redis: image: *default-image platform: linux/amd64 container_name: redis-standalone environment: - TLS_ENABLED=yes - TLS_CLIENT_CNS=testcertuser - TLS_AUTH_CLIENTS_USER=CN - REDIS_CLUSTER=no - PORT=6379 - TLS_PORT=6666 command: ${REDIS_EXTRA_ARGS:---enable-debug-command yes --enable-module-command yes --tls-auth-clients optional --save ""} ports: - 6379:6379 - 6666:6666 # TLS port volumes: - "./dockers/standalone:/redis/work" profiles: - standalone - sentinel - all-stack - all - e2e osscluster: image: *default-image platform: linux/amd64 container_name: redis-osscluster environment: - NODES=6 - PORT=16600 command: "--cluster-enabled yes" ports: - "16600-16605:16600-16605" volumes: - "./dockers/osscluster:/redis/work" profiles: - cluster - all-stack - all cae-resp-proxy: image: redislabs/client-resp-proxy:latest container_name: cae-resp-proxy environment: - TARGET_HOST=redis - TARGET_PORT=6379 - LISTEN_PORT=17000,17001,17002,17003 # 4 proxy nodes: initially show 3, swap in 4th during SMIGRATED - LISTEN_HOST=0.0.0.0 - API_PORT=3000 - DEFAULT_INTERCEPTORS=cluster,hitless ports: - "17000:17000" # Proxy node 1 (host:container) - "17001:17001" # Proxy node 2 (host:container) - "17002:17002" # Proxy node 3 (host:container) - "17003:17003" # Proxy node 4 (host:container) - hidden initially, swapped in during SMIGRATED - "18100:3000" # HTTP API port (host:container) depends_on: - redis profiles: - e2e - all proxy-fault-injector: build: context: . dockerfile: maintnotifications/e2e/cmd/proxy-fi-server/Dockerfile container_name: proxy-fault-injector ports: - "15000:5000" # Fault injector API port (host:container) depends_on: - cae-resp-proxy environment: - PROXY_API_URL=http://cae-resp-proxy:3000 profiles: - e2e - all osscluster-tls: image: *default-image platform: linux/amd64 container_name: redis-osscluster-tls environment: - NODES=6 - PORT=6430 - TLS_PORT=5430 - TLS_ENABLED=yes - TLS_CLIENT_CNS=testcertuser - TLS_AUTH_CLIENTS_USER=CN - REDIS_CLUSTER=yes - REPLICAS=1 command: "--tls-auth-clients optional --cluster-announce-ip 127.0.0.1" ports: - "6430-6435:6430-6435" # Regular ports - "5430-5435:5430-5435" # TLS ports (set via TLS_PORT env var) - "16430-16435:16430-16435" # Cluster bus ports (PORT + 10000) volumes: - "./dockers/osscluster-tls:/redis/work" profiles: - cluster-tls - all sentinel-cluster: image: *default-image platform: linux/amd64 container_name: redis-sentinel-cluster network_mode: "host" environment: - NODES=3 - TLS_ENABLED=yes - TLS_CLIENT_CNS=testcertuser - TLS_AUTH_CLIENTS_USER=CN - REDIS_CLUSTER=no - PORT=9121 command: ${REDIS_EXTRA_ARGS:---enable-debug-command yes --enable-module-command yes --tls-auth-clients optional --save ""} #ports: # - "9121-9123:9121-9123" volumes: - "./dockers/sentinel-cluster:/redis/work" profiles: - sentinel - all-stack - all sentinel: image: *default-image platform: linux/amd64 container_name: redis-sentinel depends_on: - sentinel-cluster environment: - NODES=3 - REDIS_CLUSTER=no - PORT=26379 command: ${REDIS_EXTRA_ARGS:---sentinel} network_mode: "host" #ports: # - 26379:26379 # - 26380:26380 # - 26381:26381 volumes: - "./dockers/sentinel.conf:/redis/config-default/redis.conf" - "./dockers/sentinel:/redis/work" profiles: - sentinel - all-stack - all ring-cluster: image: *default-image platform: linux/amd64 container_name: redis-ring-cluster environment: - NODES=3 - TLS_ENABLED=yes - TLS_CLIENT_CNS=testcertuser - TLS_AUTH_CLIENTS_USER=CN - REDIS_CLUSTER=no - PORT=6390 command: ${REDIS_EXTRA_ARGS:---enable-debug-command yes --enable-module-command yes --tls-auth-clients optional --save ""} ports: - 6390:6390 - 6391:6391 - 6392:6392 volumes: - "./dockers/ring:/redis/work" profiles: - ring - cluster - all-stack - all