Efter lite forskning är en trolig förklaring att initialize_cache-initialisatorn körs långt innan rälsen/initialiserarna körs. Så om det inte har definierats tidigare i exekveringskedjan kommer cachelagret inte att ställas in. Du måste konfigurera det tidigare i kedjan, som i application.rb eller environments/production.rb
Min lösning var att flytta APP_CONFIG-laddningen innan appen konfigureras så här:
APP_CONFIG = YAML.load_file(File.expand_path('../config.yml', __FILE__))[Rails.env]
och sedan i samma fil:
config.cache_store = :redis_store, APP_CONFIG['redis']
Ett annat alternativ var att lägga cache_store i ett before_configuration-block, ungefär så här:
config.before_configuration do
APP_CONFIG = YAML.load_file(File.expand_path('../config.yml', __FILE__))[Rails.env]
config.cache_store = :redis_store, APP_CONFIG['redis']
end