docker php 容器安装redis和mongodb扩展

一、背景

很多项目(几乎所有)都有用到redis和mongodb来存储数据,php没有自带这些扩展,需要手动安装

二、PHP redis扩展安装步骤

这里以php8.2版本容器为例,以下命令中'php82'均为容器名称,需要更换为你自己的实际名称,使用容器ID也可以
  1. 进入容器
bash 复制代码
docker exec -it php82 /bin/bash
  1. 安装Redis依赖库
bash 复制代码
apt-get update
apt-get install -y git unzip
apt-get install -y git build-essential
  1. 克隆phpredis源代码并切换到合适的分支(根据你的PHP版本选择)
bash 复制代码
git clone https://github.com/phpredis/phpredis.git
cd phpredis
  1. 构建和安装扩展
bash 复制代码
phpize
./configure
make && make install
  1. 在PHP配置文件中启用扩展
bash 复制代码
echo "extension=redis.so" >> /usr/local/etc/php/conf.d/docker-php-ext-redis.ini
  1. 重新启动 php-fpm 服务
bash 复制代码
docker restart php82

完成上面步骤,使用 `php -m | grep redis` 查看是否安装完成

如上图所示,即 php redis 扩展安装完成

三、PHP mongodb扩展安装步骤

  1. 进入容器
bash 复制代码
docker exec -it php82 /bin/bash
  1. 安装Redis依赖库
bash 复制代码
apt-get install -y libssl-dev
  1. 下载并编译MongoDB扩展
bash 复制代码
pecl install mongodb
  1. 在PHP配置文件中启用MongoDB扩展
bash 复制代码
echo "extension=mongodb.so" >> /usr/local/etc/php/conf.d/docker-php-ext-mongodb.ini
  1. 重新启动 php-fpm 服务
bash 复制代码
docker restart php82

完成上面步骤,使用 `php -m | grep mongodb` 查看是否安装完成

如上图所示,即 php mongodb 扩展安装完成

至此,小功告成,继续下一步探索吧~

相关推荐
好奇的菜鸟21 分钟前
Docker 配置项详解与示例
运维·docker·容器
爱上语文1 小时前
Redis基础(6):SpringDataRedis
数据库·redis·后端
Java初学者小白1 小时前
秋招Day14 - Redis - 应用
java·数据库·redis·缓存
奈斯ing2 小时前
【Redis篇】数据库架构演进中Redis缓存的技术必然性—高并发场景下穿透、击穿、雪崩的体系化解决方案
运维·redis·缓存·数据库架构
一眼万年042 小时前
Redis Cluster模式
redis·微服务
deriva4 小时前
.netcore+ef+redis+rabbitmq+dotcap先同步后异步再同步的方法,亲测有效
redis·rabbitmq·.netcore
爱上语文5 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
IT成长日记6 小时前
【Docker基础】Docker数据卷管理:docker volume inspect及其参数详解
运维·docker·容器·volume·inspect
ladymorgana6 小时前
【Docker】如何设置 `wiredTigerCacheSizeGB` 和 `resources.limits.memory`
运维·docker·容器
mcdx6 小时前
基于Docker构建OrangePi5 SDK环境
docker·容器