docker php 安装swoole,制作php+swoole的Docker环境

获取官方PHP7.1-cli镜像,并在此基础上进行修改

修改apt源为163的源echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" > /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian/ jessie-backports main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie-updates main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie-backports main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib" >> /etc/apt/sources.list安装php71-redis扩展pecl方式pecl install -o -f redis \ && rm -rf /tmp/pear \ && echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini源代码编译方式curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.6.tar.gz \ && tar xfz /tmp/redis.tar.gz \ && rm -r /tmp/redis.tar.gz \ && mv phpredis-3.1.6 /usr/src/php/ext/redis \ && docker-php-ext-install redis安装php-igbinary扩展pecl install -o -f igbinary \ && rm -rf /tmp/pear \ && docker-php-ext-enable igbinarypecl方式

安装pdo_mysql扩展docker-php-ext-install pdo_mysql官方脚本方式(pdo_mysql依赖igbinary)

安装swoole v1.10.1docker cp /tmp/v1.10.1.zip 5538061f5c26:/tmp/unzip /tmp/v1.10.1.zip

phpize

./configure

make && make install源代码方式

完整的DockerfileDockerfileFROM php:7.1-cli

COPY swoole-v1.10.1.tar.gz /tmp/

WORKDIR /usr/src/swoole

RUN buildDeps='unzip wget' \

&& echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" > /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian/ jessie-backports main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie-updates main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb-src http://mirrors.163.com/debian/ jessie-backports main non-free contrib" >> /etc/apt/sources.list \

&& echo "deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib" >> /etc/apt/sources.list \

&& apt-get update \

&& apt-get install -y $buildDeps \  #安装igbinary扩展

&& pecl install -o -f igbinary \

&& rm -rf /tmp/pear \

&& docker-php-ext-enable igbinary \  #安装redis扩展

&& pecl install -o -f redis \

&& rm -rf /tmp/pear \

&& docker-php-ext-enable redis \  #安装mysql扩展

&& docker-php-ext-install pdo_mysql \  #安装swoole1.10.1

&& tar -xzf /tmp/swoole-v1.10.1.tar.gz -C /usr/src/swoole --strip-components=1 \

&& phpize \

&& ./configure \

&& make \

&& make install \

&& docker-php-ext-enable swoole \

&& rm -rf /var/lib/apt/lists/* \

&& rm -f /tmp/swoole-v1.10.1.tar.gz \

&& rm -r /usr/src/swoole \

&& apt-get purge -y --auto-remove $buildDeps

WORKDIR /

作者:whisshe

链接:https://www.jianshu.com/p/d1bfe6edbb43

打开App,阅读手记

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值