php環(huán)境搭建docker版

本例使用的是電腦是MacBook Pro,搭建架構(gòu)是:宿主機(jī)(mac)Nginx,Docker里部署PHP7.2-FPM

宿主機(jī)安裝Nginx?

可自行編譯或者下載安裝包,我這里選擇了brew安裝

宿主機(jī)安裝Docker?

我這里選擇【Mac with Apple Chip】下載版本,安裝,然后選擇國內(nèi)源

"registry-mirrors": [
    "http://registry.docker-cn.com",
    "http://hub-mirror.c.163.com"
],

docker 安裝 php7.2.34?

0、搜索php源:
https://hub.docker.com/_/php?tab=tags&page=1&name=7.2-fpm

php:7.2-fpm.png

1、安裝PHP
docker pull php:7.2-fpm
docker run -d --name php72-fpm -p 9527:9000 -v /Users/liyuchao/xxx:/var/www/html php:7.2-fpm
「說明」
9527 端口是給php72-fpm用的,后續(xù)nginx配置項里,需要注意這個
/var/www/html 是php-fpm默認(rèn)web目錄

2、docker 中安裝PHP擴(kuò)展
大部分都可以使用 docker-php-ext-install安裝,例如:
docker-php-ext-install pdo_mysql gd
redis使用pecl安裝
pecl install redis
docker-php-ext-enable redis

比較特殊的幾個標(biāo)記了一下對應(yīng)的版本號,需要自行編譯安裝
安裝apcu:
https://pecl.php.net/get/apcu-5.1.21.tgz
phpize
make
make install

安裝imagick: 參考 https://blog.csdn.net/weixin_34094559/article/details/116174201

安裝gd:
apt-get install --allow-downgrades -y zlib1g=1:1.2.8.dfsg-5 zlib1g-dev libz-dev libfreetype6-dev libjpeg62-turbo-dev libpng-dev
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/
&& docker-php-ext-install -j$(nproc) gd

docker安裝ps [ps: command not found]

apt-get update
apt install procps

宿主機(jī)(mac)配置nginx?

在/opt/homebrew/etc/nginx/servers下新增一個文件:

server {
    listen 80;
    server_name 127.0.0.1;
    root /Users/liyuchao/xxx;

    access_log  /usr/local/var/log/nginx/php-access.log;
    error_log   /usr/local/var/log/nginx/php-error.log;

    location / {
        autoindex on;
        index  index.html index.htm index.php;
        try_files $uri $uri/ /index.php?$query_string;
    }
    
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9527;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/html$fastcgi_script_name;
        include        fastcgi_params;
    }
}

nginx -s reload
不出意外訪問http://127.0.0.1/,可以看到 hello world!

docker命令科普?

docker ps -a 顯示所有的容器,包括未運(yùn)行的
docker images 查看鏡像
docker commit -m="描述信息" -a="作者" 容器id 目標(biāo)鏡像名:[TAG] 將容器打包成鏡像
docker commit -m"banban php72-fpm" -a"liyuchao" 3a3d106f102c php-banban:7.2-fpm
docker save 51303b7c2668 >lyc.tar 導(dǎo)出鏡像
docker load < lyc.tar 導(dǎo)入鏡像
docker images
docker tag xxxxxx php:7.2-fpm

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容