前面已经介绍了mac os系统composer安装tp8项目,但环境默认不支持redis,需要安装相应的环境,下面就介绍一下docker安装redis 6.2.14以及如何安装php支持redis扩展。

  1. 安装docker
    登录www.docker.io 官网,下载mac版本的docker桌面版。
    安装完成后,在终端输入命令% docker --version
    正确显示版本号即安装成功。
  2. docker安装redis 6.2.14并运行:
    先创建一个配置文件,以便映射到容器内:
vim /usr/local/ect/redis/redis.conf

添加以下内容:
requirepass your_password
按esc键输入:wq回车保存

docker run -d -p 6379:6379 -v /path/to/redis.conf:/usr/local/etc/redis/redis.conf --name my-redis redis:6.2.14 redis-server /usr/local/etc/redis/redis.conf

也可以先启动redis,后通过docker-cli命令设置redis密码:

docker run -d -p 6379:6379 --name my-redis redis:6.2.14
# 连接到运行中的 Redis 容器
docker exec -it my-redis redis-cli
# 在 redis-cli 中设置密码
CONFIG SET requirepass your_password

测试:

docker exec -it my-redis redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth your_password
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> 

返回pong即正常。

  1. 安装 PHP 开发工具和依赖项:使用以下命令安装 PHP 开发工具和依赖项:
brew install autoconf pkg-config

安装完成后,确保将 PHP 相关的路径添加到 PATH 环境变量中,以便系统可以找到 PHP 可执行文件。可以执行以下命令来添加:

echo 'export PATH="/usr/local/opt/php@8.2/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/php@8.2/sbin:$PATH"' >> ~/.zshrc
source ~/.zshrc
  1. 安装 PHP Redis 扩展:使用以下命令安装 PHP Redis 扩展:
sudo pecl install redis
  1. 重启 PHP 服务:以使更改生效。可以使用以下命令重启 PHP-FPM:
brew services restart php@8.2
  1. 重启nginx
sudo nginx -s reload
  1. 打开项目/tp8_project/config/cache.php
<?php

// +----------------------------------------------------------------------
// | 缓存设置
// +----------------------------------------------------------------------

return [
	// 默认缓存驱动
	'default' => 'redis',

	// 缓存连接方式配置
	'stores' => [
		'file' => [
			// 驱动方式
			'type' => 'File',
			// 缓存保存目录
			'path' => '/www/wwwroot/tp8_project/redis',
			// 缓存前缀
			'prefix' => '',
			// 缓存有效期 0表示永久缓存
			'expire' => 0,
			// 缓存标签前缀
			'tag_prefix' => 'tag:',
			// 序列化机制 例如 ['serialize', 'unserialize']
			'serialize' => [],
		],
		// 更多的缓存连接
		// redis缓存
		'redis' => [
			// 驱动方式
			'type' => 'redis',
			// 服务器地址
			'host' => '127.0.0.1',
			// 端口
			'port' => 6379,
			// 密码
			'password' => 'your_password',

			'prefix' => '',
		],
	],

];
  1. 运行项目测试
Cache::set('test', 'ok', 60);
echo (Cache::get('test'));

一切ok.

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐