Skip to main content

Redis WebUI

What is Redis WebUI?

Redis WebUI is a lightweight browser-based admin panel for Redis: browse keys, inspect values, and run basic operations without touching redis-cli. In Laradock it's pre-wired to connect to the redis service automatically.

Start Redis WebUI

./laradock start redis-webui

The container's compose.yml declares depends_on: redis, so starting redis-webui also starts redis if it isn't running yet.

Stop Redis WebUI

./laradock stop redis-webui

Redis WebUI keeps no data of its own (it's just a UI on top of redis), so there's nothing to lose by stopping, removing, or rebuilding it.

Configuration

All settings live in redis-webui/defaults.env and can be overridden by adding the same line to your own .env:

VariableDefaultWhat it does
REDIS_WEBUI_USERNAMElaradockLogin username for the web panel.
REDIS_WEBUI_PASSWORDlaradockLogin password for the web panel.
REDIS_WEBUI_CONNECT_HOSTredisHost of the Redis instance the panel connects to (the redis container name).
REDIS_WEBUI_CONNECT_PORT6379Port of that Redis instance (container-internal, not REDIS_PORT).
REDIS_WEBUI_PORT9987Host-side port the web panel itself is published on.

The panel's Redis connection also picks up REDIS_PASSWORD (defined in the main .env, shared with the redis service, secret_redis by default) to authenticate.

Log in

Open http://localhost:9987 (or your custom REDIS_WEBUI_PORT) and sign in with REDIS_WEBUI_USERNAME / REDIS_WEBUI_PASSWORD. It should already be connected to the redis container, no extra connection setup needed for the default single-instance setup.

Point it at a different Redis instance

Set REDIS_WEBUI_CONNECT_HOST and REDIS_WEBUI_CONNECT_PORT in .env to another container's name and internal port (for example valkey and 6379), then apply the change:

./laradock start redis-webui

Environment variable changes only take effect on container recreation, a plain restart isn't enough here, re-run start/up -d as shown above.

Connect to more than one Redis instance at once

The underlying image (phpRedisAdmin) supports listing multiple servers in its sidebar, it just needs one numbered set of environment variables per instance (REDIS_1_HOST/REDIS_1_PORT/REDIS_1_AUTH, REDIS_2_HOST/REDIS_2_PORT/REDIS_2_AUTH, and so on). Laradock's redis-webui/compose.yml only wires up REDIS_1_* (mapped from REDIS_WEBUI_CONNECT_HOST/REDIS_WEBUI_CONNECT_PORT/REDIS_PASSWORD) for the default single-instance setup. To browse a second instance (say valkey) in the same panel, add a matching REDIS_2_* block to the environment: section of redis-webui/compose.yml, then rebuild:

./laradock rebuild redis-webui

Common issues

  • Blank data or "connection refused" in the panel. The redis container isn't up yet or crashed. Check ./laradock logs redis and confirm it's healthy before reloading the panel.
  • Login fails with the default credentials. Someone already changed REDIS_WEBUI_USERNAME/REDIS_WEBUI_PASSWORD in .env; check there before assuming a bug.
  • Panel shows no keys even though your app is caching. Double-check REDIS_WEBUI_CONNECT_HOST/PORT actually point at the Redis instance your app writes to; if you run multiple Redis-compatible services (Redis, Valkey, Dragonfly), it's easy to point the UI at the wrong one.
  • Changed .env but the panel still connects to the old host/port. Environment variable changes need the container recreated, not just restarted, run ./laradock start redis-webui again (see Point it at a different Redis instance).

Prefer the command line? See Redis for redis-cli usage. New to Laradock? Start at Getting Started.