docker搭建多版本php环境 | php 技术论坛-金年会app官方网
最近由于项目需要,需要同时启动多个项目,但是一个项目是php5.6,一个项目是php7.4,还有一个是php8.0,但是我需要同时运行,所以需要搭建一个多版本的开发环境,基于此自己实现了一个dnmp
dnmp是基于docker部署的nginx、php、mysql开发环境
支持php5.6、php7.0、php7.1、php7.2、php7.3、php7.4、php8.0、php8.1同时运行并可直接项目指定php版本,已支持常见扩展,如bcmath、gd、opcache、pdo_mysql、zip、redis、xdebug、swoole、mongodb等,并且可通过对应的dockerfile中按例添加自己所需要的扩展
支持mysql5.6、mysql5.7、mysql8.0
一、快速使用
clone项目:
git clone https://github.com/soryetong/dnmp.git
数据配置
cd dnmp # 准备env cp .env.example .env # 修改env内的内容 # 不需要指定服务所运行的平台的话可以这样写 # container_platform=
docker-compose编排
# 建议命令 # docker-compose up nginx phpversion mysqlversion -d docker-compose up nginx php7.4 mysql5.7 -d
注意注意📢
由于docker-compose.yml文件已经包含了上述的所有配置,所以不建议直接执行
docker-compose up -d
,建议先安装必要的php、mysql版本(如第三步)如有需要再额外安装所需要的php即可,如
docker-compose up php5.6 -d
服务访问
在浏览器中访问: 就可以看到默认的
phpinfo()
注意点
nginx的default.conf中默认加载的是php7.4,所以在第一次编排时建议首先部署php7.4,如果不需要php7.4,那么需要先修改 ./config/nginx/conf.d/default.conf内的 fastcgi_pass 指向的php版本
受网络波动的影响,编排时失败可多重试几次
更多的详细可以 上面查看
本作品采用《cc 协议》,转载必须注明作者和本文链接
推荐文章: