网站建设资讯

NEWS

网站建设资讯

如何使用docker在服务器运行多个php版本

这篇“如何使用docker在服务器运行多个php版本”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用docker在服务器运行多个php版本”文章吧。

成都创新互联公司自2013年起,先为益阳等服务建站,益阳等地企业,进行企业商务咨询服务。为益阳企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

下面以安装php7版本为例,介绍下具体做法。

centos6安装docker :

yum install -y https://get.docker.com/rpm/1.7.1/centos-6/rpms/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm
 service docker start
 chkconfig docker on

拉取php7.2镜像

docker pull php:7.2-fpm

新建目录以及文件/usr/local/docker-php7/zz-docker.conf ,保存以下内容:

[global]
daemonize = no
[www]
listen = 9001

;修改php.ini里面的变量就修改php_value数组相应的属性就好

php_value[session.save_handler] = redis
php_value[session.save_path] = tcp://127.0.0.1:6379
php_value[post_max_size] = 20m
php_value[upload_max_filesize] = 20m
php_value[date.timezone] = asia/shanghai
php_value[opcache.enable] = 1
php_value[opcache.enable_cli] = 1

运行容器,使用host模式跟宿主机通讯

docker run -d -v /var/www/html:/var/www/html -v /usr/local/docker-php7/zz-docker.conf:/usr/local/etc/php-fpm.d/zz-docker.conf --net=host --name php7.2 php:7.2-fpm

安装各种常用php扩展

docker exec php7.2 apt-get update -y
docker exec php7.2 apt-get install -y libfreetype6-dev
docker exec php7.2 apt-get install -y libjpeg62-turbo-dev
docker exec php7.2 apt-get install -y libpng-dev
docker exec php7.2 docker-php-ext-install pdo_MySQL
docker exec php7.2 docker-php-ext-install mysqli
docker exec php7.2 docker-php-ext-install iconv 
docker exec php7.2 docker-php-ext-install gd
docker exec php7.2 docker-php-ext-install mbstring
docker exec php7.2 docker-php-ext-install opcache
#顺便改下配置
docker exec php7.2 mv /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini

由于无法通过 docker-php-ext-install 安装redis扩展,所以需要手动安装下

#进入容器里的命令行
docker exec -it php7.2 sh 
docker-php-source extract
curl -l -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/4.2.0.tar.gz
tar -zxvf /tmp/redis.tar.gz -c /usr/src/php/ext
mv /usr/src/php/ext/phpredis-* /usr/src/php/ext/phpredis
docker-php-ext-install phpredis
#到这里按ctr+p 和 ctrl+q 以退出容器
docker restart php7.2

以上命令已经成功在9001端口运行了php7.2。接下来只要在nginx的配置里php脚本指向到9001端口即可(原来是指向9000端口)

以上就是关于“如何使用docker在服务器运行多个php版本”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


本文名称:如何使用docker在服务器运行多个php版本
分享URL:http://njwzjz.com/article/geehpe.html