Используем redis в docksal

ivnish 6 июня в 16:44

Была задача: протестировать работу сайта на Drupal 7 с кэшем хранящимся в redis.

Чтобы добавить redis в проект на docksal, нужно в файл docksal.yml добавить

  redis:
    extends:
      file: ${HOME}/.docksal/stacks/services.yml
      service: redis

и запустить/перезапустить проект.

Вторым шагом нужно установить модуль redis

Затем в settings.php сайта нужно прописать

$conf['redis_client_interface'] = 'PhpRedis';
$conf['redis_client_host']      = 'redis';
$conf['lock_inc']               = 'sites/all/modules/redis/redis.lock.inc';
$conf['path_inc']               = 'sites/all/modules/redis/redis.path.inc';
$conf['cache_backends'][]       = 'sites/all/modules/redis/redis.autoload.inc';
$conf['cache_default_class']    = 'Redis_Cache';

Теперь можно сбросить кэш и удалить таблицы cache* из БД

Чтобы проверить наличие кэша в redis нужно:

1) Зайти в контейнер docker exec -ti ИМЯПРОЕКТА_redis_1 bash
2) Выполнить команду redis-cli --scan

Автор

ivnish Drupal FullStack Developer, модератор drupal.ru