Running Redis in a Docker container

Running Redis in a Docker container

Play this article

Redis stands for REmote DIctionary Server. It is an open source, fast NoSQL database written in ANSI C and optimized for speed. Redis is an in-memory database that means that all data in Redis is stored in RAM, delivering the fastest possible access times to the data for both read and write requests.

Redis is written in ANSI C and optimized for speed. It is designed and implemented for performance. Redis compiles into extremely efficient machine code and requires little overhead. It uses a (mostly) single threaded event loop model that optimally utilizes the CPU core that it is running on. The data structures used internally by Redis are implemented for maximum performance and the majority of data operations require constant time and space.

Redis is based on the key-value model. In Redis, the data is stored and fetched from Redis by key. Keybased access allows for extremely efficient access times and this model maps naturally to caching, with Redis providing the customary GET and SET semantics for interacting with the data. Also, it supports multi-key operations. Several of Redis’ commands operate on multiple keys. Multi-key operations provide better overall performance compared to performing the operations one after the other, because they require substantially less communication and administration.

Redis is designed to be a remote, network-attached server. It uses a lightweight TCP protocol that has client implementations in every conceivable programming language. Redis is basically an open source, in-memory, data structure store that can be used as a cache, primary database and message broker. It is a multi-model database that supports search, graph, real-time streaming, analytics and many other use cases beyond that of a simple data store. With over 52,000+ GitHub stars, 20,000+ forks and over 500+ contributors, Redis is quite popular among the developers. Redis gives developers building applications the tools and information they need in a very efficient manner. Redis today can be deployed on-premises, across clouds, hybrid environments as well as over the Edge devices flawlessly.

Here's a quickstart guide to get Redis running in a Docker container:

Ensure that Docker is installed

docker -v

Create a dedicated Docker network

docker network create -d bridge redisnet

Run Redis container

docker run -d -p 6379:6379 --name myredis --network redisnet redis

Install redis-cli

brew install redis-cli

Enter into Redis-cli


Accessing the keys

  • Create a generic key like set a1 100 and get a1 100
set a1 100
get a1

Importing user keys

Let us import a user database( 6k keys). This dataset contains users stored as Redis Hash.

The user hashes contain the following fields:

user:id : The key of the hash.
first_name : First Name.
last_name : Last name.
email : email address.
gender : Gender (male/female).
ip_address : IP address.
country : Country Name.
country_code : Country Code.
city : City of the user.
longitude : Longitude of the user.
latitude : Latitude of the user.
last_login : EPOC time of the last login.

Cloning the repository

git clone
cd redis-datasets/user-database

Importing the user database:

redis-cli -h localhost -p 6379 < ./import_users.redis

Open a new terminal and run the monitor CLI


Flushing up the database


cleaning up container

docker stop myredis

Further References

Did you find this article valuable?

Support Collabnix by becoming a sponsor. Any amount is appreciated!