美文网首页
PHP&MySQL范例精解_创建、修改、重用-docker环境搭

PHP&MySQL范例精解_创建、修改、重用-docker环境搭

作者: 程序猿阿乐 | 来源:发表于2020-04-06 15:47 被阅读0次
    PHP.and.MySQL.Create.Modify.Reuse
    PHP&MySQL范例精解_创建、修改、重用-docker环境搭建-3.准备php-gd
    

    准备php

    拉取php镜像,因为书本是针对php5的,我们就不拉取7的了

    docker pull php:5.6-fpm
    

    选择这个php:5.6-fpm,而不是php:5.6-fpm-alpine3.8是想安装gd更方便点

    创建临时容器

    docker run -d --rm --name tmp-php-fpm php:5.6-fpm
    

    进入容器

    localhost:~ jjkkll$ bash -c "clear && docker exec -it tmp-php-fpm sh"
    

    可以找到相应的目录,上次找到目录位置用的php:7.2.12-fpm-alpine3.8的镜像,发现这个位置是一样的.

    /var/www/html
    /usr/local/etc/
    

    将配置放到容器外

    若要将配置放到容器外,可以在容器外,拷贝容器里的配置

    docker cp tmp-php-fpm:/usr/local/etc/  /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-etc/
    

    可以在相应目录下看到配置已经拷贝到外面了

    localhost:~ jjkkll$ tree -N /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-etc/
    /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-etc/
    └── etc
        ├── pear.conf
        ├── php
        │   ├── conf.d
        │   ├── php.ini-development
        │   └── php.ini-production
        ├── php-fpm.conf
        ├── php-fpm.conf.default
        └── php-fpm.d
            ├── docker.conf
            ├── www.conf
            └── zz-docker.conf
    

    启动时docker run命令里加上-v参数指定即可:

    -v /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-etc/etc/:/usr/local/etc/
    

    制作包含gd的镜像

    准备sources.list

    国内更新包的速度太慢,改成163的镜像:

    /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-gd/sources.list,文件内容:
    
    deb http://mirrors.163.com/debian/ stretch main non-free contrib
    deb http://mirrors.163.com/debian/ stretch-updates main non-free contrib
    deb http://mirrors.163.com/debian/ stretch-backports main non-free contrib
    deb-src http://mirrors.163.com/debian/ stretch main non-free contrib
    deb-src http://mirrors.163.com/debian/ stretch-updates main non-free contrib
    deb-src http://mirrors.163.com/debian/ stretch-backports main non-free contrib
    deb http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib
    deb-src http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib
    

    Dockerfile

    准备Dockerfile文件

    /Users/jjkkll/Documents/2020-book-read/7302195625/docker/php-5.6-fpm-gd/Dockerfile,文件内容:
    
    FROM php:5.6-fpm
    COPY Dockerfile /
    COPY sources.list /
    RUN  mv /etc/apt/sources.list /etc/apt/sources.list.bak && mv /sources.list /etc/apt/
    RUN apt-get update && apt-get install -y \
            libfreetype6-dev \
            libjpeg62-turbo-dev \
            libpng-dev \
        && docker-php-ext-configure gd --with-freetype --with-jpeg \
        && docker-php-ext-install -j$(nproc) gd
    

    进入目录,创建镜像

    docker build -t php-5.6-fpm-gd ./Dockerfile-php-5.6-fpm-gd
    

    相关文章

      网友评论

          本文标题:PHP&MySQL范例精解_创建、修改、重用-docker环境搭

          本文链接:https://www.haomeiwen.com/subject/zpjbphtx.html