A web dashboard for your favorite caching system.
Unzip the archive and launch index.php in a web browser. No installation is required.
However, it is highly recommended (although not required) to run composer install
.
If you use the defaults (e.g. Redis, Memcached servers), everything should work out of the box.
To customize the configuration, do not edit config.dist.php
directly, but copy it into config.php
.
Replace all files and delete the tmp
folder (this folder contains only compiled Twig templates).
All keys from the config file are supported ENV variables,
they just must start with PCA_
prefix.
Options with an array can be set using "dot notation" but use _
instead of a dot.
Or you can even use JSON (e.g. Redis SSL option).
Redis:
PCA_REDIS_0_NAME
The server name (optional).PCA_REDIS_0_HOST
Optional when a path is specified.PCA_REDIS_0_PORT
Optional when the default port is used.PCA_REDIS_0_SCHEME
Connection scheme (optional). If you need a TLS connection, set it totls
.PCA_REDIS_0_SSL
SSL options for TLS. Requires Redis >= 6.0 (optional). You can set value as JSON{"cafile":"private.pem","verify_peer":true}
.PCA_REDIS_0_DATABASE
Default database (optional).PCA_REDIS_0_USERNAME
ACL - requires Redis >= 6.0 (optional).PCA_REDIS_0_PASSWORD
Optional.PCA_REDIS_0_AUTHFILE
File with a password, e.g. Docker secrets (optional).PCA_REDIS_0_PATH
Unix domain socket (optional).PCA_REDIS_0_DATABASES
Number of databases, use this if the CONFIG command is disabled (optional).PCA_REDIS_0_SCANSIZE
Number of keys, the server will use the SCAN command instead of KEYS (optional).
Memcached:
PCA_MEMCACHED_0_NAME
The server name (optional).PCA_MEMCACHED_0_HOST
Optional when a path is specified.PCA_MEMCACHED_0_PORT
Optional when the default port is used.PCA_MEMCACHED_0_PATH
Unix domain socket (optional).
Open config file for more info.
To add another server, add the same environment variables, but change
0
to1
(2
for third server and so on).
A Docker image is also available: https://hub.docker.com/r/robinn/phpcacheadmin
Run with single command:
docker run -p 8080:80 -d --name phpcacheadmin -e "PCA_REDIS_0_HOST=redis_host" -e "PCA_REDIS_0_PORT=6379" -e "PCA_MEMCACHED_0_HOST=memcached_host" -e "PCA_MEMCACHED_0_PORT=11211" robinn/phpcacheadmin
Or use it in docker-compose.yml
version: '3'
services:
phpcacheadmin:
image: robinn/phpcacheadmin
ports:
- "8080:80"
#volumes:
# If you want to use config.php instead of ENV variables
# - "./config.php:/var/www/html/config.php"
environment:
- PCA_REDIS_0_HOST=redis
- PCA_REDIS_0_PORT=6379
- PCA_MEMCACHED_0_HOST=memcached
- PCA_MEMCACHED_0_PORT=11211
links:
- redis
- memcached
redis:
image: redis
memcached:
image: memcached
- PHP >= 8.2 (Use v1 branch if you need support for >=7.4)
- Redis server >= 3.0.0
- Memcached server >= 1.4.31. If you do not see the keys, you need to enable
lru_crawler
. SASL is not supported because there is no way to get the keys.
It is not necessary to have all dashboards enabled.
- FileCache (
robinn/cache
) dashboard.