【发布时间】:2021-07-17 08:32:15
【问题描述】:
我已经解决了这个问题到互联网的尽头,没有任何运气。
我从 cakes Cache.php 收到“连接被拒绝”错误
我的引擎设置为 Redis,我让 docker 正确构建了映像(至少我相信我这样做了),一切似乎都是正确的,但对于我来说,我无法让缓存引擎工作。
这是我目前设置的:
DockerfileRUN yes | apt-get install redis-server
RUN pecl install redis \&& echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini \&& rm -rf /tmp/pear
docker-compose.yml redis: image: "app-redis:cont" ports: - "6379:6379"
package.json"deployRedis": "docker build . -f Dockerfile.redis -t app-redis:cont",
core.php$engine = 'Redis';Cache::config('default', [ 'engine' => $engine, 'prefix' => $prefix . 'default_', 'path' => CACHE . 'persistent' . DS, 'serialize' => $serializingEngine, 'duration' => $duration,]);
Cache::config('_cake_core_', [ 'engine' => $engine, 'prefix' => $prefix . 'cake_core_', 'path' => CACHE . 'persistent' . DS, 'serialize' => $serializingEngine, 'duration' => $duration,]);
当我调试 extension_loaded('redis'); 时,我得到的值是 true
这是转储到浏览器的错误消息Fatal error: Uncaught CacheException: Cache engine "default" is not properly configured. Ensure required extensions are installed, and credentials/permissions are correct in /var/www/html/public/app.name.local/lib/Cake/Cache/Cache.php on line 190
最后,当我在 connect 方法的 RedisEngine.php 文件中调试时,从 $e 这是错误消息:**"Connection refused"**
如果值得一提,我已经检查了 docker 中正在运行哪些映像,并且确实看到了 Redis:
b38550ff4f38 app-redis:cont "docker-entrypoint.s…" 8 seconds ago Up 7 seconds 6379/tcp app_redis.1.j0r12vgrsmv6hbtagcy3oj9vv
高度赞赏任何建议,因为我已经在这方面工作了将近 2 天。
谢谢!
【问题讨论】:
标签: php docker cakephp redis connection