docker安装php及使用dockfile创建镜像和使用,安装php扩展

docker安装php

拉取镜像

docker pull php:7.3.19-fpm

 运行容器

-v /mnt/hgfs/docinner/code/php:/code : 将主机中项目的目录 xxx/php 挂载到容器的 /code

docker run --name vm-php-fpm -v /mnt/hgfs/docinner/code/php:/code -d php:7.3.19-fpm

优化-统一使用网络

docker run --name vm-php-fpm --net vm-net --network-alias php -v /mnt/hgfs/docinner/code/php:/code -d php:7.3.19-fpm

 


 php dockerfile

dockfile内容

FROM php:7.3.19-fpm

# 开启php扩展安装
ARG INSTALL_PHPEXT=true
# phpredis版本支持
ARG PHPREDIS_VERSION=3.1.3

# 复制指令,从上下文目录中复制文件或者目录到容器里指定路径。
# 目标路径, 该路径不用事先建好,路径不存在的话,会自动创建。
COPY redis.tar.gz /tmp/

# 安装pdo、redis扩展支持
# 参考地址:https://www.cnblogs.com/jxxiaocao/p/12118637.html
RUN if [ ${INSTALL_PHPEXT} = true ]; then \
    apt-get update \
    # install php pdo extension
    && docker-php-ext-install pdo pdo_mysql \
    # install php redis extension
    && tar xvf /tmp/redis.tar.gz \
    && rm -r /tmp/redis.tar.gz \
    && mkdir -p /usr/src/php/ext \
    && mv phpredis-${PHPREDIS_VERSION} /usr/src/php/ext/redis \
    && docker-php-ext-install redis \
    # install php gd extension
    # 安装各种库
    && apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev \
    # 解压源码
    && docker-php-source extract \
    && cd /usr/src/php/ext/gd \
    # 准备编译
    && docker-php-ext-configure gd --with-webp-dir=/usr/include/webp --with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-freetype-dir=/usr/include/freetype2 \
    # 编译安装
    && docker-php-ext-install gd \
    # install vim
    && apt-get install -y vim \
    # install ping
    && apt install -y iputils-ping \
;fi

build

docker build -t php:cible2.0 .

运行容器(老的,后续删除,可不参考)

docker run --name vm-basicfinder-v3nf-php --net vm-basicfinder-v3nf --network-alias php -v /mnt/hgfs/basicfinder/v3nf-api:/basicfinder/www/v3nf.basicfinder.com/api -v /mnt/hgfs/basicfinder/v3nf-web:/basicfinder/www/v3nf.basicfinder.com/web  -d php:cible2.0
 
docker run --name vm-php --net vm-bf --network-alias php --restart=on-failure:10 -v /mnt/hgfs/basicfinder:/basicfinder/www -d wohaokun/php:7.3.19

运行容器(优化后)

docker run --name vm-php --net vm-bf --network-alias php --restart=on-failure:10 -v /mnt/hgfs/code:/www/code -d wohaokun/php:7.3.19

 or mac

docker run --name bf-php --net vm-bf --network-alias php --restart=on-failure:10 -v /Users/wanghaokun/dev:/basicfinder/www -d wohaokun/php:7.3.19

 


 php 安装完扩展存放目录

/usr/local/lib/php/extensions/no-debug-non-zts-20180731/

 

posted on 2020-12-02 10:38  爱吃柠檬不加糖  阅读(986)  评论(0编辑  收藏  举报

导航