Join our Discord Server
Ajeet Raina Ajeet Singh Raina is a former Docker Captain, Community Leader and Arm Ambassador. He is a founder of Collabnix blogging site and has authored more than 570+ blogs on Docker, Kubernetes and Cloud-Native Technology. He runs a community Slack of 8900+ members and discord server close to 2200+ members. You can follow him on Twitter(@ajeetsraina).

Running Redis Enterprise inside Docker Container in 5 Minutes

2 min read

Redis Enterprise Software (earlier known as “Redis Labs Enterprise Cluster”) is a robust in-memory but persistent on disk database . Redis Enterprise Software, RS in short, enhances the speed and the versatility of Redis with robust reliability, ease of use, cost savings, and new advanced capabilities. RS is today maintained and run by Redis Labs which has around 7,100 enterprise customers, including seven Fortune 10 companies, three of the four credit card issuers, three of the top five communication companies, three of the top five healthcare companies, six of the top eight technology companies, and four of the top seven retailers to name a few.

Source ~
https://www.slideshare.net/RedisLabs/moving-beyond-cache-by-yiftach-shoolman-redis-day-bangalore-2020?from_action=save

RS brings various enterprise-grade capabilities which are listed below:

  • Redis on Flash
  • Geo-Distributed Active-Active Conflict-free Replicated Redis Databases (CRDB)
  • Seamless scalability
  • True high availability
  • Built-in data persistence
  • Backups and replication
  • Predictable high-performance
  • Multiple dedicated databases
  • Unlimited database connections
  • Full-featured management UI Cluster Automation

Why Redis on Docker?


Redis is the most popular database used with Docker containers. Docker brings a great deal of benefits when working with Redis Enterprise Software. Containers help scale-minimize Redis Enterprise Software and fit it right into your development environment. You can run a full cluster locally on your Windows, macOS or Linux host within few seconds.

I attended Redis Day Event which happened in Bengaluru last month. As per Docker Hub Jan 2020 statistics, 5.4 Million Launches per day have been reported which is really overwhelming figure.

Source ~
https://www.slideshare.net/RedisLabs/moving-beyond-cache-by-yiftach-shoolman-redis-day-bangalore-2020?from_action=save

Under this blog post, we will see how Redis Enterprise can be setup using Docker container in 5 Minutes.

Deploying Redis Enterprise inside Docker Container

Prerequisite:

  • Play with Docker Platform
  • Redis Enterprise Software Docker image works best when you provide a minimum of 2 cores and 6GB ram per container. You can find additional minimum hardware and software requirements for Redis Enterprise Software in the product documentation

Steps

docker run -d --cap-add sys_resource --name rp -p 8443:8443 -p 9443:9443 -p 12000:12000 redislabs/redis

Visit http://IP:8443 to open Redis Labs Enterprise Software.

Note: The Docker container with RS runs on your localhost with port 8443 open for HTTPS connections, 9443 for REST API connections, and port 12000 open for redis client connections. You can publish other ports with -p <host_port>:<container_port>.

Click on “Setup”.

In the Node Configuration settings, enter a cluster FQDN such as cluster.local. Then click Next button.

Supply Cluster Name as “collab-cluster”.

Click “Next”. If you purchased a cluster key please insert it in the field below and click Next. If you would like to use the free version just click Next. We will use trial version.

Click “Next”

Add you entry and click “Next”.

Setup Admin Credentials

Once you click “Next” it will create a cluster for you

Wait for few seconds and you will see the below page which will refresh your page and you will be sooner welcome with Redis Enterprise UI.

Accessing Redis Enterprise UI

It’s time to create a new database.

Creating Database

Select “redis database” and the “single region” deployment, and click Next.

Click on “Advanced Option”. You can supply 1GB as Memory and add port 12000. Add “collabdb” as database.Click on “Activate”. At this point of time, keep the rest of entries by default.

Once you click “Activate”, do verify the entries as shown below:

Connect to your Database

$ docker exec -it rp bash
redislabs@fd8dca50f905:/opt$
 /opt/redislabs/bin/redis-cli -p 12000
127.0.0.1:12000> auth <enter password>
OK
127.0.0.1:12000> set key1 123
OK
127.0.0.1:12000> get key1
"123"

Running RedisInSight – A Lightweight Multi-platform management GUI for Redis

Source ~
https://www.slideshare.net/RedisLabs/moving-beyond-cache-by-yiftach-shoolman-redis-day-bangalore-2020?from_action=save

If you are looking out for a tool to inspect your Redis data, monitor health and perform runtime server configuration with a browser-based management interface for your Redis deployment, then RedisInsight is the right solution. RedisInsight is a lighweight multiplatform Management GUI for Redis. It is supported on Mac, Linux & Windows system.

Let us go ahead and try to bring up RedisInsight quickly using Docker container.

docker run -v redisinsight:/db -p 8001:8001 redislabs/redisinsight

Click on “Add Redis Database”. Choose “Add Database”.

Pass on 172.18.0.3 as IP, db1 as database, 12000 as port and click Enter.

Click “Add Redis Database” to get your DB added.

RedisInsight should be able to display UI for your database.

References:

Have Queries? Join https://launchpass.com/collabnix

Ajeet Raina Ajeet Singh Raina is a former Docker Captain, Community Leader and Arm Ambassador. He is a founder of Collabnix blogging site and has authored more than 570+ blogs on Docker, Kubernetes and Cloud-Native Technology. He runs a community Slack of 8900+ members and discord server close to 2200+ members. You can follow him on Twitter(@ajeetsraina).
Join our Discord Server
Index