laravel/docker compose/redis-class'redis'未找到

qlfbtfca  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(627)

这个项目是由另一个团队建立的,我无法通过这个错误。使用PHP7.2和Laravel6.2。我的 docker-compose.yml :

  1. redis:
  2. image: redis
  3. command: ["redis-server", "--appendonly", "yes","--requirepass","Redis.123"]
  4. volumes:
  5. - redis-data:/data
  6. container_name: redis-master
  7. ports:
  8. - "6379:6379"

以及 database.php :

  1. 'redis' => [
  2. 'client' => env('REDIS_CLIENT', 'phpredis'),
  3. 'options' => [
  4. 'cluster' => env('REDIS_CLUSTER', 'redis'),
  5. 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'),
  6. ],
  7. 'default' => [
  8. 'url' => env('REDIS_URL'),
  9. 'host' => env('REDIS_HOST', '127.0.0.1'),
  10. 'password' => env('REDIS_PASSWORD', null),
  11. 'port' => env('REDIS_PORT', 6379),
  12. 'database' => env('REDIS_DB', 0),
  13. ],
  14. 'cache' => [
  15. 'url' => env('REDIS_URL'),
  16. 'host' => env('REDIS_HOST', '127.0.0.1'),
  17. 'password' => env('REDIS_PASSWORD', null),
  18. 'port' => env('REDIS_PORT', 6379),
  19. 'database' => env('REDIS_CACHE_DB', 1),
  20. ],
  21. ]

容器已启动并正在运行,“准备接受连接”。如果我试图命中基url或任何端点,则堆栈跟踪中会出现此错误。我把redis化名为 app.php : 'RedisManager' => Illuminate\Support\Facades\Redis::class, 正如其他人所建议的那样。有人能看到任何明显的缺失或可能导致这种情况的东西吗?predis安装在 composer.json : "predis/predis": "^1.1", ,但未在配置中设置。如果我把phpredis改成predis,我就会得到错误 development.ERROR: 选择 failed: NOAUTH Authentication required. [tcp://127.0.0.1:6379] .

pdtvr36n

pdtvr36n1#

设置为 phpredis ,很可能与phpredis扩展有关。如果要使用,则需要安装此扩展 phpredis 客户。
将其设置为 predis 完全不同。这是身份验证错误,因为您没有设置密码。在你的 .env 文件,附加此

  1. REDIS_PASSWORD=Redis.123

那么 artisan config:clear ,它可以做这项工作。

相关问题