亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

制作php+swoole的Docker環境

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

  2. 修改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
  1. 安装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
  1. 安装php-igbinary扩展

    pecl install -o -f igbinary \ && rm -rf /tmp/pear \ && docker-php-ext-enable igbinary
  • pecl方式

安装pdo_mysql扩展

docker-php-ext-install pdo_mysql
  • 官方脚本方式(pdo_mysql依赖igbinary)

安装swoole v1.10.1

docker cp /tmp/v1.10.1.zip 5538061f5c26:/tmp/unzip /tmp/v1.10.1.zip
phpize
./configure
make && make install
  • 源代码方式

完整的Dockerfile

  • Dockerfile

  FROM 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


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
51
獲贊與收藏
181

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消