CAKE/CACHE configuration for Passbolt container

I am running Passbolt Docker container in K8S, but it seems that CAKE/CACHE configuration is not documented at all in https://hub.docker.com/r/passbolt/passbolt .

It seems that HELM contains hardcoded outdated app.php (see https://github.com/passbolt/charts-passbolt/issues/110) regarding CACHE/CAKE.

I would like to configure CACHE/CAKE for my own but I am not sure what ENV params are required. This is HELM hardcoded app.php:

   'Cache' => [
        'default' => [
            'className' => 'Redis',
            'prefix' => env('CACHE_PREFIX_ORG', 'passbolt'),
            'server' => env('CACHE_CAKE_DEFAULT_SERVER', '127.0.0.1'),
            'database' => (int)env('CACHE_DEFAULT_DATABASE', 1),
            'password' => env('CACHE_CAKE_DEFAULT_PASSWORD', ''),
            'port' => env('CACHE_CAKE_DEFAULT_PORT', 6379),
        ],
        '_cake_core_' => [
            'className' => 'Redis',
            'duration' => '+1 week',
            'server' => env('CACHE_CAKE_DEFAULT_SERVER', '127.0.0.1'),
            'database' => (int)env('CACHE_CAKE_CORE_DATABASE', 2),
            'password' => env('CACHE_CAKE_DEFAULT_PASSWORD', ''),
            'port' => env('CACHE_CAKE_DEFAULT_PORT', 6379),
        ],
        '_cake_model_' => [
            'className' => 'Redis',
            'duration' => '+1 week',
            'server' => env('CACHE_CAKE_DEFAULT_SERVER', '127.0.0.1'),
            'database' => (int)env('CACHE_CAKE_MODEL_DATABASE', 3),
            'password' => env('CACHE_CAKE_DEFAULT_PASSWORD', ''),
            'port' => env('CACHE_CAKE_DEFAULT_PORT', 6379),
        ],
    ],

And this is official app.php from latest Passbolt 5.4:

    'Cache' => [
        'default' => [
            'className' => FileEngine::class,
            'path' => CACHE,
            'url' => env('CACHE_DEFAULT_URL', null),

            // Allow using custom cache engine
            'host' => env('CACHE_DEFAULT_HOST', null),
            'port' => env('CACHE_DEFAULT_PORT', null),
            'password' => env('CACHE_DEFAULT_PASSWORD', null),
            'database' => env('CACHE_DEFAULT_DATABASE', null),
        ],
        '_cake_translations_' => [
            'className' => env('CACHE_CAKECORE_CLASSNAME', FileEngine::class),
            'prefix' => 'myapp_cake_translations_',
            'path' => CACHE . 'persistent' . DS,
            'serialize' => true,
            'duration' => '+1 years',
            'url' => env('CACHE_CAKECORE_URL', null),
            'host' => env('CACHE_CAKECORE_HOST', null),
            'port' => env('CACHE_CAKECORE_PORT', null),
            'password' => env('CACHE_CAKECORE_PASSWORD', null),
            'database' => env('CACHE_CAKECORE_DATABASE', null),
            'fallback' => env('CACHE_CAKECORE_FALLBACK', 'default'),
        ],
        '_cake_model_' => [
            'className' => FileEngine::class,
            'prefix' => 'myapp_cake_model_',
            'path' => CACHE . 'models' . DS,
            'serialize' => true,
            'duration' => '+1 years',
            'url' => env('CACHE_CAKEMODEL_URL', null),
            'host' => env('CACHE_CAKEMODEL_HOST', null),
            'port' => env('CACHE_CAKEMODEL_PORT', null),
            'password' => env('CACHE_CAKEMODEL_PASSWORD', null),
            'database' => env('CACHE_CAKEMODEL_DATABASE', null),
            'fallback' => env('CACHE_CAKEMODEL_FALLBACK', 'default'),
        ],
    ],

What ENV variables I need to set to use REDIS on 127.0.0.1:6379 with PASSWORD auth?

  • CACHE_DEFAULT_HOST=“127.0.0.1”
  • CACHE_DEFAULT_PORT=“6379”
  • CACHE_DEFAULT_PASSWORD=“secretpassword”
  • CACHE_DEFAULT_DATABASE=“1” ???UNSURE ABOUT THIS???

What about CACHE_DEFAULT_URL what is the purpose of this param?

How to force Passbolt to use REDIS as cache backend?

Is there any documentation regarding CACHE configuration?

Maybe this solves the issue: https://github.com/passbolt/charts-passbolt/issues/110