relay/ocp-install.sh

77 lines
1.8 KiB
Bash

#!/bin/bash
cd /var/www/webroot/ROOT
# check if litespeed cache is enabled
litespeed_enabled=$(wp plugin is-active litespeed-cache)
# disable object caching if so
if [ -n "$litespeed_enabled" ]; then
wp litespeed-option set object 0
fi
#install OCP instead
wp plugin install 'https://objectcache.pro/plugin/object-cache-pro.zip?token=091801712a649241ca11668fdf19552c2d13dad4d9b1d28848c276cd5111' --force --activate
# config OCP
# TODO check if is a cluster and get port,
is_cluster=false
if $is_cluster; then
host=IP.ADD.HERE
port=6379
password="password from end of redis node conf file"
else
# use default single-node configuration
host=/var/run/redis/redis.sock
port=0
fi
ocp_config="[
'token' => '091801712a649241ca11668fdf19552c2d13dad4d9b1d28848c276cd5111',
'host' => '$host',
'port' => $port,
'client' => 'relay',
'database' => 0,
'prefix' => 'db0',
// whether multiple WordPress sites use the Redis instance
'shared' => false,
// reduce memory usage
'compression' => 'zstd',
'serializer' => 'igbinary',
// experiment with these, some sites may benefits, so may not
'prefetch' => false,
'split_alloptions' => false,
// standard options
'timeout' => 0.5,
'read_timeout' => 0.5,
'retries' => 3,
'backoff' => 'smart',
// debug only
'debug' => false,
'save_commands' => false,
]"
wp config set WP_REDIS_CONFIG "$ocp_config" --raw
wp config set WP_REDIS_DISABLED false --raw
wp redis enable --force
wp redis flush
# free redis object cache config
#wp config set WP_REDIS_CLIENT 'relay'
#wp config set WP_REDIS_SCHEME 'unix'
#wp config set WP_REDIS_IGBINARY true --raw
#wp config set WP_REDIS_PATH '/var/run/redis/redis.sock'
#wp config set WP_REDIS_PORT 0 --raw
#wp config set WP_REDIS_DATABASE 0 --raw