docker.recipes

RedisInsight Redis GUI

beginner

Official Redis GUI with cluster support and performance monitoring.

Overview

RedisInsight is Redis Labs' official graphical user interface for managing, monitoring, and interacting with Redis instances. Released as part of Redis Labs' commitment to improving developer experience, RedisInsight provides real-time performance metrics, memory analysis, cluster visualization, and advanced debugging capabilities that go far beyond basic command-line interactions. The tool supports Redis modules like RedisJSON, RediSearch, and RedisTimeSeries while offering features like slow query analysis and connection profiling. This configuration combines RedisInsight with multiple Redis instances including Redis Stack (which bundles popular modules) and Redis Commander as an alternative web interface. The stack creates a comprehensive Redis development environment where RedisInsight serves as the primary monitoring and analysis tool while Redis Commander provides quick data browsing capabilities. Both GUIs connect to standard Redis 7 and Redis Stack instances, allowing developers to compare module functionality and test different Redis configurations. This combination is particularly valuable for Redis developers, database administrators managing Redis clusters, and teams evaluating Redis modules for production use. The setup provides immediate access to advanced Redis features like full-text search via RediSearch and JSON document storage through RedisJSON, while RedisInsight's cluster support and performance profiling make it ideal for teams scaling Redis deployments or optimizing cache performance.

Key Features

  • Real-time Redis performance monitoring with memory usage analysis and slow query detection
  • Visual Redis Cluster topology mapping with node health status and slot distribution
  • Built-in Redis module support for RedisJSON, RediSearch, RedisTimeSeries, and RedisGraph operations
  • Interactive Redis command execution with syntax highlighting and auto-completion
  • Memory profiling tools showing key distribution, expiration tracking, and data type analysis
  • Redis Streams visualization with consumer group monitoring and message flow tracking
  • Dual GUI approach with RedisInsight for advanced analytics and Redis Commander for quick data browsing
  • Redis Stack integration providing immediate access to search, JSON, and time-series capabilities

Common Use Cases

  • 1Redis cluster administrators monitoring node performance and debugging replication issues
  • 2E-commerce teams analyzing session data patterns and optimizing cache hit rates for better performance
  • 3Application developers testing RedisJSON document queries and RediSearch full-text indexing during development
  • 4Database teams evaluating Redis memory usage and identifying keys causing high memory consumption
  • 5DevOps engineers troubleshooting Redis Streams message processing and consumer group lag issues
  • 6Startups prototyping real-time features using Redis pub/sub while monitoring message throughput
  • 7Enterprise teams comparing Redis configurations across development environments before production deployment

Prerequisites

  • Docker Engine 20.10+ and Docker Compose v2 for multi-container orchestration
  • Minimum 1GB RAM available (Redis Stack requires 512MB+, RedisInsight needs 256MB+)
  • Ports 6379, 6380, 8001, 8002, and 8081 available on the host system
  • Basic Redis knowledge including data types, commands, and persistence concepts
  • Understanding of Redis modules and their use cases for full Redis Stack utilization
  • Web browser with JavaScript enabled for accessing RedisInsight and Redis Commander interfaces

For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms

docker-compose.yml

docker-compose.yml
1services:
2 redis:
3 image: redis:7-alpine
4 ports:
5 - "6379:6379"
6 command: redis-server --appendonly yes
7 volumes:
8 - redis_data:/data
9 networks:
10 - redis_net
11
12 redis-stack:
13 image: redis/redis-stack:latest
14 ports:
15 - "6380:6379"
16 - "8001:8001"
17 volumes:
18 - redis_stack_data:/data
19 networks:
20 - redis_net
21
22 redisinsight:
23 image: redislabs/redisinsight:latest
24 ports:
25 - "8002:8001"
26 volumes:
27 - redisinsight_data:/db
28 networks:
29 - redis_net
30
31 redis-commander:
32 image: rediscommander/redis-commander:latest
33 ports:
34 - "8081:8081"
35 environment:
36 - REDIS_HOSTS=local:redis:6379,stack:redis-stack:6379
37 depends_on:
38 - redis
39 - redis-stack
40 networks:
41 - redis_net
42
43volumes:
44 redis_data:
45 redis_stack_data:
46 redisinsight_data:
47
48networks:
49 redis_net:

.env Template

.env
1# Redis Stack
2# Redis at localhost:6379
3# Redis Stack at localhost:6380
4# RedisInsight at http://localhost:8002
5# Redis Commander at http://localhost:8081

Usage Notes

  1. 1RedisInsight at http://localhost:8002
  2. 2Redis Commander at http://localhost:8081
  3. 3Redis Stack includes modules
  4. 4RediSearch, RedisJSON included
  5. 5Add connections in RedisInsight

Individual Services(4 services)

Copy individual services to mix and match with your existing compose files.

redis
redis:
  image: redis:7-alpine
  ports:
    - "6379:6379"
  command: redis-server --appendonly yes
  volumes:
    - redis_data:/data
  networks:
    - redis_net
redis-stack
redis-stack:
  image: redis/redis-stack:latest
  ports:
    - "6380:6379"
    - "8001:8001"
  volumes:
    - redis_stack_data:/data
  networks:
    - redis_net
redisinsight
redisinsight:
  image: redislabs/redisinsight:latest
  ports:
    - "8002:8001"
  volumes:
    - redisinsight_data:/db
  networks:
    - redis_net
redis-commander
redis-commander:
  image: rediscommander/redis-commander:latest
  ports:
    - "8081:8081"
  environment:
    - REDIS_HOSTS=local:redis:6379,stack:redis-stack:6379
  depends_on:
    - redis
    - redis-stack
  networks:
    - redis_net

Quick Start

terminal
1# 1. Create the compose file
2cat > docker-compose.yml << 'EOF'
3services:
4 redis:
5 image: redis:7-alpine
6 ports:
7 - "6379:6379"
8 command: redis-server --appendonly yes
9 volumes:
10 - redis_data:/data
11 networks:
12 - redis_net
13
14 redis-stack:
15 image: redis/redis-stack:latest
16 ports:
17 - "6380:6379"
18 - "8001:8001"
19 volumes:
20 - redis_stack_data:/data
21 networks:
22 - redis_net
23
24 redisinsight:
25 image: redislabs/redisinsight:latest
26 ports:
27 - "8002:8001"
28 volumes:
29 - redisinsight_data:/db
30 networks:
31 - redis_net
32
33 redis-commander:
34 image: rediscommander/redis-commander:latest
35 ports:
36 - "8081:8081"
37 environment:
38 - REDIS_HOSTS=local:redis:6379,stack:redis-stack:6379
39 depends_on:
40 - redis
41 - redis-stack
42 networks:
43 - redis_net
44
45volumes:
46 redis_data:
47 redis_stack_data:
48 redisinsight_data:
49
50networks:
51 redis_net:
52EOF
53
54# 2. Create the .env file
55cat > .env << 'EOF'
56# Redis Stack
57# Redis at localhost:6379
58# Redis Stack at localhost:6380
59# RedisInsight at http://localhost:8002
60# Redis Commander at http://localhost:8081
61EOF
62
63# 3. Start the services
64docker compose up -d
65
66# 4. View logs
67docker compose logs -f

One-Liner

Run this command to download and set up the recipe in one step:

terminal
1curl -fsSL https://docker.recipes/api/recipes/redisinsight-complete/run | bash

Troubleshooting

  • RedisInsight shows 'Connection refused' errors: Ensure Redis containers are fully started before adding database connections in RedisInsight
  • Redis Commander displays empty database list: Verify REDIS_HOSTS environment variable syntax and confirm Redis instances are accepting connections on specified ports
  • High memory usage warnings in RedisInsight: Check Redis maxmemory policy settings and review key expiration strategies using the memory profiler
  • RedisJSON commands fail in RedisInsight: Confirm you're connecting to the Redis Stack instance on port 6380, not the standard Redis on port 6379
  • Cluster view shows disconnected nodes: Ensure Redis Cluster is properly initialized with CLUSTER MEET commands and all cluster ports are accessible
  • Redis Commander authentication failures: Add Redis AUTH password to REDIS_HOSTS string format if Redis requires authentication

Community Notes

Loading...
Loading notes...

Download Recipe Kit

Get all files in a ready-to-deploy package

Includes docker-compose.yml, .env template, README, and license

Components

redisinsightredisredis-commander

Tags

#redis#redisinsight#gui#cache#monitoring

Category

Database Stacks
Ad Space