Merge branch 'sc1-redis-cluster' into 'master'

Add redis-cluster-6.2.12 image for CI pipeline

Closes #127

See merge request https://gitlab.com/gitlab-org/gitlab-build-images/-/merge_requests/683

Merged-by: Stan Hu <stanhu@gmail.com>
Approved-by: Stan Hu <stanhu@gmail.com>
Co-authored-by: Sylvester Chin <schin@gitlab.com>
This commit is contained in:
Stan Hu 2023-05-19 06:39:35 +00:00
commit f538f4ae62
3 changed files with 36 additions and 0 deletions

View file

@ -73,3 +73,6 @@ postgres-14-pgvector-0.4.1:
postgres-15-pgvector-0.4.1:
extends: .build_static_image
redis-cluster-6.2.12:
extends: .build_static_image

View file

@ -0,0 +1,9 @@
FROM redis:6.2.12
COPY scripts/run-redis-cluster /docker-entrypoint.sh
RUN chmod 755 /docker-entrypoint.sh
EXPOSE 7001 7002 7003
ENTRYPOINT ["/docker-entrypoint.sh"]

24
scripts/run-redis-cluster Executable file
View file

@ -0,0 +1,24 @@
#!/bin/bash
# Approach references https://docs.docker.com/config/containers/multi-service_container/#use-a-wrapper-script
# This script starts 3 Redis server process in the background and syncs them after a short wait.
start_redis_server() {
redis-server --port $1\
--cluster-enabled yes \
--cluster-node-timeout 5000 \
--bind 0.0.0.0 \
--cluster-config-file "$2" &
}
start_redis_server 7001 nodes-1.conf
start_redis_server 7002 nodes-2.conf
start_redis_server 7003 nodes-3.conf
sleep 3
redis-cli --cluster create 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 --cluster-yes
wait -n
exit $?