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 扩展安装完成

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

相关推荐
haixingtianxinghai3 小时前
Redis真的是单线程吗?
数据库·redis·缓存
多云的夏天4 小时前
docker容器部署-windows-ubuntu
java·docker·容器
淡泊if6 小时前
1.2GB → 98MB,我的 Docker 镜像瘦身实战记录
运维·docker·容器
Sst的头号粉丝6 小时前
Docker——cgroups
运维·docker·容器
庞轩px6 小时前
缓存Key设计的“七要七不要”
java·jvm·redis·缓存
2401_858936887 小时前
51 单片机核心知识点:GPIO、中断、定时器与蜂鸣器驱动
单片机·mongodb·nosql
❀͜͡傀儡师7 小时前
Docker 部署Datart BI工具完整指南(PostgreSQL 持久化存储)
docker·postgresql·容器
l1t7 小时前
解决用docker安装umbra数据库遇到的FATAL:Operation not permitted错误
数据库·docker·容器
last demo7 小时前
docker存储
运维·docker·容器
難釋懷8 小时前
Redis分片集群手动故障转移
数据库·redis·缓存