怎么构建swooledocker镜像

这篇文章主要讲解了“怎么构建swoole docker镜像”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么构建swoole docker镜像”吧!

创新互联从2013年开始,先为新兴等服务建站,新兴等地企业,进行企业商务咨询服务。为新兴企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

这里默认你已经安装好docker,并准备好以下环境

一.环境

  1. Ubuntu 18.04.1 LTS

  2. php:7.2.4-cli-alpine3.7 (https://hub.docker.com/_/php/ 拉取)

  3. swoole-4.2.1 (https://pecl.php.net/package/swoole 下载)

  4. docker version

$ docker version
Client:
Version: 18.05.0-ce
API version: 1.37
Go version: go1.9.5
Git commit: f150324
Built: Wed May 9 22:16:13 2018
OS/Arch: linux/amd64
Experimental: false
Orchestrator: swarm
 
Server:
Engine:
Version: 18.05.0-ce
API version: 1.37 (minimum version 1.12)
Go version: go1.9.5
Git commit: f150324
Built: Wed May 9 22:14:23 2018
OS/Arch: linux/amd64
Experimental: false

二.基于pecl构建

$ mkdir build-swoole && cd build-swoole
$ vi dockerfile

在 Dockerfile 中写入如下内容

FROM php:7.2.4-cli-alpine3.7
RUN echo http://mirrors.ustc.edu.cn/alpine/v3.7/main > /etc/apk/repositories && \
echo http://mirrors.ustc.edu.cn/alpine/v3.7/community >> /etc/apk/repositories
RUN apk update && apk upgrade
RUN apk add m4 autoconf make gcc g++ linux-headers
RUN pecl install swoole-4.2.1
RUN docker-php-ext-enable swoole
CMD \["php","-m"\]
$ docker build --no-cache -t php:7.2.4-swoole-alpine3.7 .

由于网络等原因,基于pecl构建的方式有时成功,有时失败。下面介绍一种更稳定的构建方式

三.编译方式构建

$ mkdir -p build-swoole/install && cd build-swoole
$ wget -c https://pecl.php.net/get/swoole-4.2.1.tgz -P ./install
$ vi Dockerfile

在 Dockerfile 中写入如下内容

FROM php:7.2.4-cli-alpine3.7
RUN echo http://mirrors.ustc.edu.cn/alpine/v3.7/main > /etc/apk/repositories && \
echo http://mirrors.ustc.edu.cn/alpine/v3.7/community >> /etc/apk/repositories
RUN apk update && apk upgrade
RUN apk add m4 autoconf make gcc g++ linux-headers
ADD ./install/swoole-4.2.1.tgz /tmp/
RUN cd /tmp/swoole-4.2.1 && phpize && ./configure && make && make install
RUN docker-php-ext-install pdo_MySQL
RUN docker-php-ext-enable swoole
CMD \["php","-m"\]
$ docker build --no-cache -t php:7.2.4-swoole-alpine3.7 .

tips: dockerfile中我加了 pdo_mysql 扩展

查看是否构建成功

$ docker run -it --rm --name swoole php:7.2.4-swoole-alpine3.7 sh -c "php -m | grep swoole"
swoole

出现swoole则表示构建成功

感谢各位的阅读,以上就是“怎么构建swoole docker镜像”的内容了,经过本文的学习后,相信大家对怎么构建swoole docker镜像这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


本文题目:怎么构建swooledocker镜像
本文来源:http://hbruida.cn/article/jdocge.html