docker更改php配置,php开发docker环境配置

镜像的创建

FROM php:5.6-fpm

#安装扩展

#安装oracle扩展需要的文件

COPY ./extensions/oci8 /opt/

RUN \

apt-get update \

# 安装源码包里面的扩展

&& docker-php-ext-install -j$(nproc) bcmath pdo_mysql \

#安装gd库

# && apt-get install -y libfreetype6-dev libpng-dev libjpeg62-turbo-dev \

# && docker-php-ext-install -j$(nproc) gd \

#安装xdebug扩展

&& cd /opt && curl -o xdebug-2.4.0.tgz http://pecl.php.net/get/xdebug-2.4.0.tgz && tar -zxvf xdebug-2.4.0.tgz && cd xdebug-2.4.0 && phpize && ./configure && make && make install && docker-php-ext-enable xdebug \

#安装redis扩展

&& cd /opt && curl -o redis-4.3.0.tgz http://pecl.php.net/get/redis-4.3.0.tgz && tar -zxvf redis-4.3.0.tgz && cd redis-4.3.0 && phpize && ./configure && make && make install && docker-php-ext-enable redis \

#安装gearman扩展

&& cd /opt && curl -o gearman-1.1.2.tgz http://pecl.php.net/get/gearman-1.1.2.tgz && tar -zxvf gearman-1.1.2.tgz && apt-get install -y libgearman-dev && cd gearman-1.1.2 && phpize && ./configure && make && make install && docker-php-ext-enable gearman \

# && pecl install redis xdebug-2.4.0 && docker-php-ext-enable redis xdebug \

#安装oracle扩展, 如果不需要请注释掉

&& sh /opt/install-oci8.sh

base镜像选择的是php官方镜像,它提供了docker-php-ext等工具,相当好用

创建容器

启动fpm容器

docker run -d --name php -v /Volumes/work:/code dev/php56

这里没有使用-p指定暴露的端口,为什么呢?

启动nginx容器

docker run -d --name nginx -p 80:80 -v /Volumes/work:/code

-v /opt/docker/conf/nginx:/etc/nginx/conf.d --link php:php nginx

之所以fpm容器没有暴露端口是因为,nginx容器链接到了fpm容器

nginx location配置

location ~ \.php($|/) {

fastcgi_pass php:9000;

fastcgi_split_path_info ^(.+?\.php)(/.+)$;

fastcgi_param SCRIPT_FILENAME /code/shopCrm/web/$fastcgi_script_name;

fastcgi_param PATH_INFO $fastcgi_path_info;

include fastcgi_params;

}

location的里面php:9000, 因为使用的是link所以可以直接使用php代表fpm的ip地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值