溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何使用docker在服務(wù)器運(yùn)行多個(gè)php版本

發(fā)布時(shí)間:2022-05-31 11:13:27 來(lái)源:億速云 閱讀:457 作者:zzz 欄目:大數(shù)據(jù)

這篇“如何使用docker在服務(wù)器運(yùn)行多個(gè)php版本”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“如何使用docker在服務(wù)器運(yùn)行多個(gè)php版本”文章吧。

下面以安裝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 ,保存以下內(nèi)容:

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

;修改php.ini里面的變量就修改php_value數(shù)組相應(yīng)的屬性就好

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

運(yùn)行容器,使用host模式跟宿主機(jī)通訊

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擴(kuò)展

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

由于無(wú)法通過(guò) docker-php-ext-install 安裝redis擴(kuò)展,所以需要手動(dòng)安裝下

#進(jìn)入容器里的命令行
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

以上命令已經(jīng)成功在9001端口運(yùn)行了php7.2。接下來(lái)只要在nginx的配置里php腳本指向到9001端口即可(原來(lái)是指向9000端口)

以上就是關(guān)于“如何使用docker在服務(wù)器運(yùn)行多個(gè)php版本”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI