zoukankan      html  css  js  c++  java
  • 给docker里的php安装gd扩展

    docker官方镜像为安装php扩展封装了函数,为开发者提供了很大的便利,以下以Dockerfile的形式演示安装gd扩展的方法,安装gd扩展需要安装几个依赖包,安装依赖包使用系统命令,安装命令根据基础镜像的不同有所不同,以下演示两种使用较多的alpine和debian系统的Dockerfile,Dockerfile中同时包含更换国内开源镜像源的内容。

    1、基础镜像 php:7.2-fpm-alpine

        Dockerfile如下:

    FROM php:7.2-fpm-alpine
    
    RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories 
        && apk update 
        && apk add libpng-dev freetype-dev libjpeg-turbo-dev 
        && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ --with-png-dir=/usr/include/  
        && docker-php-ext-install -j$(nproc) gd
    
    EXPOSE 9000
    CMD ["php-fpm"]
    

    2、基础镜像 php:7.2-fpm-stretch (debian 9) 

        Dockerfile如下:

    FROM php:7.2-fpm-stretch
    
    RUN echo "deb http://mirrors.aliyun.com/debian/ stretch main non-free contrib" > /etc/apt/sources.list 
        && echo "deb-src http://mirrors.aliyun.com/debian/ stretch main non-free contrib" >> /etc/apt/sources.list 
        && echo "deb http://mirrors.aliyun.com/debian-security stretch/updates main" >> /etc/apt/sources.list 
        && echo "deb-src http://mirrors.aliyun.com/debian-security stretch/updates main" >> /etc/apt/sources.list 
        && echo "deb http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib" >> /etc/apt/sources.list 
        && echo "deb-src http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib" >> /etc/apt/sources.list 
        && echo "deb http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib" >> /etc/apt/sources.list 
        && echo "deb-src http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib" >> /etc/apt/sources.list 
        && rm -f /etc/apt/sources.list.d/* 
        && apt-get update && apt-get install -y 
            libfreetype6-dev 
            libjpeg62-turbo-dev 
            libpng-dev 
        && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ --with-png-dir=/usr/include 
        && docker-php-ext-install -j$(nproc) gd
    
    EXPOSE 9000
    CMD ["php-fpm"]
    

      

  • 相关阅读:
    AD域修改组策略
    C#图像处理
    JsonResult序列化并保存json文件 以及对json文件读取反序列
    Git+Github代码管理控制
    Math.random控制随机数范围
    vue使用全局element-ui组件
    css3 vw、vh属性详解,以及与%、rem的区别介绍
    vue 中安装使用sass 报错遇到的问题整理
    如何将本地项目上传到Github
    GitHub优秀项目
  • 原文地址:https://www.cnblogs.com/liyuchuan/p/11718798.html
Copyright © 2011-2022 走看看