本文基于《 五分钟利用docker搭建好php7.0.10+nginx服务环境》
对PHP进行扩展升级!
将以下代码保存为一份xxx.sh 并执行,即可扩展mysql、gd、phalcon
#! /usr/bin
PHP_VERSION=7.0.10
docker run --name php \
-v /home/wwwroot:/home/wwwroot \
-v ~/php_config/php.ini:/usr/local/etc/php/php.ini \
-p 9000:9000 \
-d php:${PHP_VERSION}-fpm
docker exec -it php sed -i "s/33/2016/g" /etc/passwd
docker exec -it php sed -i "s/33/2016/g" /etc/group
docker exec -it php bash -c "set -ex \
&& cd ~ \
&& mv /etc/apt/sources.list /etc/apt/sources.list.bak \
echo deb http://mirrors.aliyun.com/debian/ jessie main non-free contrib; \
echo deb http://mirrors.aliyun.com/debian/ jessie-proposed-updates main non-free contrib; \
echo deb-src http://mirrors.aliyun.com/debian/ jessie main non-free contrib; \
echo deb-src http://mirrors.aliyun.com/debian/ jessie-proposed-updates main non-free contrib; \
} | tee /etc/apt/sources.list \
&& apt-get update \
&& apt-get install -y git \
libpcre3-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng12-dev \
&& docker-php-ext-install -j$(nproc) iconv mcrypt \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j$(nproc) gd \
&& docker-php-ext-install mysql \
&& docker-php-ext-install pdo_mysql \
&& curl -o /usr/local/etc/php/php.ini https://raw.githubusercontent.com/php/php-src/PHP-${PHP_VERSION}/php.ini-production \
&& git clone -b 2.1.x --depth=1 git://github.com/phalcon/cphalcon.git ~/cphalcon \
&& cd ~/cphalcon/ext \
&& export CFLAGS=\"-O2 -finline-functions -fvisibility=hidden\" \
&& phpize \
&& ./configure --enable-phalcon \
&& make \
&& make install \
&& docker-php-ext-enable phalcon \
&& rm -rf ~/cphalcon"
docker commit -a "technofiend <2281551151@qq.com>" -m "install gd、 phalcon、pdo_mysql、mysql extsions" php phalcon:${PHP_VERSION}-fpm
docker rm -f php
docker run --name php \
-v /home/wwwroot:/home/wwwroot \
-v ~/php_config/php.ini:/usr/local/etc/php/php.ini \
-p 9000:9000 \
-d phalcon:${PHP_VERSION}-fpm
docker exec -it php sed -i "s/33/2016/g" /etc/passwd
docker exec -it php sed -i "s/33/2016/g" /etc/group
#! /usr/binPHP_VERSION=7.0.10docker exec -it php bash -c "set -ex \&& mv /etc/apt/sources.list /etc/apt/sources.list.bak \&& { \echo \"deb http://mirrors.aliyun.com/debian/ jessie main non-free cont
做过开发的人对开发
环境
的
安装
、配置应该都不会太陌生,不管你做什么开发,对开发
环境
都会具有一定的依赖性的。对于
PHP
的 Web 开发来说,开发
环境
至少要有一个 Web
服务
器(如 Apache、Nginx)、一个数据库
服务
器(如
MySQL
)和一个
PHP
解析器吧,如果你的
PHP
代码使用的一些
扩展
,那你还需要给你的
PHP
安装
上这些
扩展
,那样你的
PHP
代码才能够顺利地跑起来。对于一个只想静静地敲代码的开发人员来说,开发
环境
的
安装
与配置这种事情,只要经历一次就已经很折腾人了。可是,事情往往不能按人们的意愿进行的,你保不准会重装下系统,也保不准会换一个新的
环境
。总之就是,你会偶
1.
PHP
源码
为了保证
Docker
镜像尽量小,
PHP
的源文件是以压缩包的形式存在镜像中,官方提供了
docker
-
php
-source 快捷脚本,用于对源文件压缩包的解压(extract)及解压后的文件进行删除(delete)的操作。
FROM
php
:7.1-apache
RUN
docker
-
php
-source extract \
# 此处开始执行你需要的...
很高兴能回答您的问题。使用
Docker
搭建
一套Nginx
PHP
的
环境
,最简单的方法是使用
Docker
Compose。
Docker
Compose是一个用于定义和运行多容器
Docker
应用程序的工具。可以使用
Docker
Compose快速
搭建
一个Nginx
PHP
环境
:1. 创建一个
docker
-compose.yml文件,里面
添加
nginx和
php
容器的配置信息;2. 执行
docker
-compose up -d命令,构建并启动Nginx
PHP
环境
;3. 将网站文件放到
php
容器的/app/public目录下,并修改
php
容器的nginx配置文件;4. 使用curl测试
服务
是否正常工作。