新聞中心
本文操作環(huán)境:macOS10.15系統(tǒng),php5.6版,macbook pro 2020電腦。

創(chuàng)新互聯(lián)建站是一家專業(yè)提供信州企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、H5建站、小程序制作等業(yè)務(wù)。10年已為信州眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
docker怎么安裝php項(xiàng)目?
使用Docker快速搭建PHP開發(fā)環(huán)境
最近有個(gè)同事找過(guò)來(lái),希望我對(duì)在很早之前寫的一個(gè)PHP網(wǎng)站上增加一些功能,當(dāng)時(shí)開發(fā)使用xampp構(gòu)建的本地開發(fā)環(huán)境,但是現(xiàn)在我的筆記本電腦已經(jīng)更新,沒(méi)有當(dāng)時(shí)的開發(fā)環(huán)境。本著盡量不往電腦上裝無(wú)用軟件的原則,想到能不能用Docker來(lái)構(gòu)建本地開發(fā)環(huán)境,因此本文介紹了如何基于Docker來(lái)快速構(gòu)建本地PHP開發(fā)環(huán)境,供有需要的同學(xué)參考使用。
目錄
- 前期準(zhǔn)備
- 編排文件
- 運(yùn)行效果
- 安裝擴(kuò)展
- 參考資料
首先下載所需要的鏡像文件
$ docker pull php:5.6-fpm-alpine3.8 $ docker pull nginx $ docker pull mysql
我們需要準(zhǔn)備一個(gè)工作目錄,例如lnmp,在工作目錄下準(zhǔn)備網(wǎng)站根目錄、Nginx配置文件目錄、Nginx日志目錄。
$ mkdir lnmp $ cd lnmp $ mkdir -p nginx/www nginx/logs nginx/conf
在新建的 www 目錄中新建 index.php 文件,用來(lái)檢測(cè) php 環(huán)境是否搭建成功。
在nginx/conf目錄下準(zhǔn)備nginx的配置文件php.conf。
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm index.php;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
include fastcgi_params;
}
}
編排文件
在工作目錄下創(chuàng)建docker-compose.yml編排文件。
version: "2.1"
services:
nginx:
image: nginx
ports:
- "80:80"
volumes:
- ~/Projects/sh-valley/docker-conf/lnmp/nginx/www:/usr/share/nginx/html
- ~/Projects/sh-valley/docker-conf/lnmp/nginx/conf:/etc/nginx/conf.d
- ~/Projects/sh-valley/docker-conf/lnmp/nginx/logs:/var/log/nginx
networks:
- lnmp-network
php:
image: php:5.6-fpm-alpine3.8
volumes:
- ~/Projects/sh-valley/docker-conf/lnmp/nginx/www:/www
networks:
- lnmp-network
mysql:
image: mysql
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=123456
networks:
- lnmp-network
networks:
lnmp-network:
至此,我們完成了所有的準(zhǔn)備工作,馬上可以啟動(dòng)查看效果。
運(yùn)行效果
$ docker-compose up -d Creating network "lnmp_php-network" with the default driver Creating lnmp_nginx_1 ... done Creating lnmp_php_1 ... done
馬上就能看到熟悉的phpinfo界面了。
安裝擴(kuò)展
默認(rèn)php鏡像中提供的擴(kuò)展比較少,缺少諸如mysql、gd2等常用的擴(kuò)展,這樣我們就需要自己安裝并啟用擴(kuò)展。
首先進(jìn)入到php容器,用php -m命令查看本地有什么擴(kuò)展。
可以使用docker-php-ext-install命令來(lái)安裝擴(kuò)展。
$ docker-php-ext-install mysql
擴(kuò)展安裝好之后就可以在php.ini中啟用。我們從phpinfo中可以看到,容器環(huán)境下默認(rèn)的php.ini沒(méi)有啟用,可以從/usr/local/etc/php下將php.ini-development拷貝為php.ini。通過(guò)修改php.ini中配置,啟用自己需要的擴(kuò)展。下面是幾個(gè)擴(kuò)展安裝的命令,供大家參考。
docker-php-ext-source在容器中創(chuàng)建一個(gè)/usr/src/php目錄docker-php-ext-enable啟用PHP擴(kuò)展,省去我們手工編輯php.ini的過(guò)程docker-php-ext-install安裝并啟用PHP擴(kuò)展docker-php-ext-configure經(jīng)常與docker-php-ext-install搭配,在需要自定義擴(kuò)展的配置時(shí)使用
網(wǎng)站欄目:docker怎么安裝php項(xiàng)目
鏈接分享:http://www.5511xx.com/article/dpocsee.html


咨詢
建站咨詢
