From d17cffaf8a07d39f71e1cfd943ab6e38c6c13f16 Mon Sep 17 00:00:00 2001 From: Patrick Gunsolley Date: Tue, 16 Sep 2025 22:33:51 -0700 Subject: [PATCH] Added memcached config for cache and sessions --- .ddev/addon-metadata/memcached/manifest.yaml | 8 ++++++++ .ddev/config.yaml | 5 ++++- .ddev/docker-compose.memcached.yaml | 20 ++++++++++++++++++++ config/app.php | 17 +++++------------ 4 files changed, 37 insertions(+), 13 deletions(-) create mode 100644 .ddev/addon-metadata/memcached/manifest.yaml create mode 100644 .ddev/docker-compose.memcached.yaml diff --git a/.ddev/addon-metadata/memcached/manifest.yaml b/.ddev/addon-metadata/memcached/manifest.yaml new file mode 100644 index 0000000..dc3b47b --- /dev/null +++ b/.ddev/addon-metadata/memcached/manifest.yaml @@ -0,0 +1,8 @@ +name: memcached +repository: ddev/ddev-memcached +version: v1.1.8 +install_date: "2025-09-16T22:17:26-07:00" +project_files: + - docker-compose.memcached.yaml +global_files: [] +removal_actions: [] diff --git a/.ddev/config.yaml b/.ddev/config.yaml index 1254385..f2cbc32 100644 --- a/.ddev/config.yaml +++ b/.ddev/config.yaml @@ -11,7 +11,10 @@ database: version: "10.11" use_dns_when_possible: true composer_version: "2" -web_environment: [] +web_environment: + - CACHE_DEFAULT_URL=memcached://memcached:11211 + - CACHE_CAKECORE_URL=memcached://memcached:11211 + - CACHE_CAKEMODEL_URL=memcached://memcached:11211 corepack_enable: false disable_upload_dirs_warning: true diff --git a/.ddev/docker-compose.memcached.yaml b/.ddev/docker-compose.memcached.yaml new file mode 100644 index 0000000..ff2c162 --- /dev/null +++ b/.ddev/docker-compose.memcached.yaml @@ -0,0 +1,20 @@ +#ddev-generated +services: + memcached: + container_name: ddev-${DDEV_SITENAME}-memcached + image: ${MEMCACHED_DOCKER_IMAGE:-memcached:1.6} + restart: "no" + # memcached is available at this port inside the container. + expose: + - 11211 + # These labels ensure this service is discoverable by ddev. + labels: + com.ddev.site-name: ${DDEV_SITENAME} + com.ddev.approot: $DDEV_APPROOT + + # Arguments passed to the memcached binary. + command: ["-m", "128"] + + volumes: + - ".:/mnt/ddev_config" + - "ddev-global-cache:/mnt/ddev-global-cache" diff --git a/config/app.php b/config/app.php index b838600..eebee06 100644 --- a/config/app.php +++ b/config/app.php @@ -1,6 +1,6 @@ [ 'default' => [ - 'className' => FileEngine::class, - 'path' => CACHE, + 'className' => MemcachedEngine::class, 'url' => env('CACHE_DEFAULT_URL', null), ], @@ -109,11 +108,8 @@ * If you set 'className' => 'Null' core cache will be disabled. */ '_cake_translations_' => [ - 'className' => FileEngine::class, + 'className' => MemcachedEngine::class, 'prefix' => 'myapp_cake_translations_', - 'path' => CACHE . 'persistent' . DS, - 'serialize' => true, - 'duration' => '+1 years', 'url' => env('CACHE_CAKECORE_URL', null), ], @@ -124,11 +120,8 @@ * Duration will be set to '+2 minutes' in bootstrap.php when debug = true */ '_cake_model_' => [ - 'className' => FileEngine::class, + 'className' => MemcachedEngine::class, 'prefix' => 'myapp_cake_model_', - 'path' => CACHE . 'models' . DS, - 'serialize' => true, - 'duration' => '+1 years', 'url' => env('CACHE_CAKEMODEL_URL', null), ], ], @@ -411,7 +404,7 @@ * To use database sessions, load the SQL file located at config/schema/sessions.sql */ 'Session' => [ - 'defaults' => 'php', + 'defaults' => 'cache', ], /**