对于PHP的各种框架基本不熟悉,上手Phalcon,仿生产环境搭建一个CentOS 虚拟机跑没问题。

但是本机总开个虚拟机,浪费资源不说,带着电脑特别卡。

切换Docker,踩无数坑之后,终于做成了镜像。

废话不说了,上代码:

FROM php:7.2-fpm
RUN apt-get update
RUN apt-get install procps build-essential zlib1g-dev unzip bzip2 libbz2-dev libxml2 libxml2-dev libldap2-dev apt-utils libjpeg-dev libfreetype6-dev libpng-dev gcc -y
RUN /usr/local/bin/docker-php-ext-install xml
RUN /usr/local/bin/docker-php-ext-install zip
RUN /usr/local/bin/docker-php-ext-install ldap
RUN /usr/local/bin/docker-php-ext-install gd
RUN /usr/local/bin/docker-php-ext-install pdo
RUN /usr/local/bin/docker-php-ext-install pdo_mysql
RUN /usr/local/bin/docker-php-ext-install mbstring
RUN pecl install psr
ADD cphalcon-3.3.x.zip cphalcon-3.3.x.zip
RUN unzip cphalcon-3.3.x.zip
RUN cd cphalcon-3.3.x/build && ./install
RUN echo 'extension=phalcon.so' > /usr/local/etc/php/conf.d/phalcon.ini
RUN echo 'extension=psr.so' > /usr/local/etc/php/conf.d/psr.ini
version: '2'
services:
  nginx:
    image: 'nginx'
    volumes:
        - ~/workspace/php
        - ~/workspace/php/lnmp-conf/nginx:/etc/nginx/conf.d:ro
    depends_on:
        - phalcon
    networks:
        ipv4_address: 172.32.0.3
    restart: always
  phalcon:
    image: 'php7.2-fpm:palcon'
    volumes:
        - ~/workspace/php
    networks:
        ipv4_address: 172.32.0.2
    restart: always
networks:
    ipam:
      config:
        - subnet: 172.32.0.0/24
#! /usr/binPHP_VERSION=7.0.10docker exec -it php bash -c "set -ex \ && mv /etc/apt/sources.list /etc/apt/sources.list.bak \ echo \"deb http://mirrors.aliyun.com/debian/ jessie main non-free cont 1. 前言1.1 为什么要用Docker ?是否有这样的场景,你搞了一个项目,在本地开发时需要搭建环境,放到线上时也需要搭建环境,到公司想暗戳戳玩一下要搭建环境,不搭还不... Docker 搭建php运行环境附件下载创建PHP 镜像编写 PHP Dockerfile创建PHP镜像创建nginx镜像编写nginx Dockerfile创建nginx镜像创建mysql镜像创建redis 镜像编写 docker-compose.yml 创建PHP 镜像 编写 PHP Dockerfile FROM php:7.4.11-fpm-alpine3.12 #RUN echo "memory_limit = 256M;" >> /usr/local/etc/php/php 注意点 1、boot2docker.iso文件总会自动远程下载,,最佳策略,中止安装,把安装程序路径下的boot2docker.iso拷贝到C:\Users\<UserName>\.docker\machine\cache中(总之,这个应该拷贝的目的地是可以通过cmd窗口看到的路径),然后把网线拔了,然后再次初始化动作。自动挂载是,访问权限,完全。首先,在资源管理器里面给D盘加目录D:\docker_machine,然后把C盘下面目录的machine这个目录剪切到D:\docker_machine下, Docker搭建的PHP7开发环境。EnvPHP 7.2.6Redis 3.2.11MySql 5.7.22Nginx 1.14.0PHP ExtensionsPhalcon 直接可使用该镜像用于该框架的开发工作Yaf 直接可用于开发Yaf框架项目Redis 扩展igbinary 扩展,更高效的序列化函数xdebug 扩展,方便调试Install获取项目git clone git@github.c... apt update #更新软件源 apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev #安装各种库 docker-php-source extract #解压源码 cd /usr/src/php/ext/gd #gd源码文件夹 docker-php-ext-configure gd --with-webp-d... 转载学习用~ 转自:http://courages.us/archives/761 上一篇简单介绍了Docker的安装,运行,这一篇来构建一个基于Nginx和PHP-FPM的Phalcon镜像。在官方找了以下,单独的Nginx和PHP镜像更加流行,混合的反倒不是很受欢迎。其实官方并不提倡在一个容器里面运行多个服务,最好是一个容器只对外提供一个服务:一个容器启动时仅仅运行一个命令(其实里面可以包 这篇文章主要讲述:docker-php-sourcedocker-php-ext-installdocker-php-ext-enabledocker-php-ext-configure如何通过这四个命令来安装php扩展的,这四个命令在容器中都做了哪些事情。1.演示命令的作用docker-php-source 此命令就是在php容器中创建源码存放目录用的。我们都知道linux一般的源码存放地点为,... Docker 是一个开源的应用容器引擎,基于Go 语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux(Windows,MacOS) 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。一、安装nginx、php、mysql镜像docker p... checking for the location of zlib... configure: error: zip support requires ZLIB. Use --with-zlib-dir=<DIR> to specify prefix where ZLIB include and library are loc