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.