Po nějakém výzkumu je pravděpodobným vysvětlením, že inicializátor initialize_cache běží mnohem dříve než rails/inicializátory. Takže pokud to není definováno dříve v řetězci provádění, pak úložiště mezipaměti nebude nastaveno. Musíte jej nakonfigurovat dříve v řetězci, například v application.rb nebo environments/production.rb
Mým řešením bylo přesunout načítání APP_CONFIG předtím, než se aplikace nakonfiguruje takto:
APP_CONFIG = YAML.load_file(File.expand_path('../config.yml', __FILE__))[Rails.env]
a poté ve stejném souboru:
config.cache_store = :redis_store, APP_CONFIG['redis']
Další možností bylo umístit cache_store do bloku before_configuration, něco takového:
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