# docker-php **Repository Path**: anxu/docker-php ## Basic Information - **Project Name**: docker-php - **Description**: docker 集成php开发环境 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-12-17 - **Last Updated**: 2021-05-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### Docker集成 php开发环境 - php - mysql - nginx - redis - memcached #### 一、目录说明 ``` ├─config 配置文件 ├─backup 备份目录 ├─service Dockerfile服务目录 │ ├─php │ │ └─Dockerfile Dockerfile文件 │ │ │ ├─php53 │ │ └─Dockerfile Dockerfile文件 │ │ │ └─... 其他目录 │ ├─tools 开发工具 │ ├─workspace 代码目录 │ └─docker-compose-example.yml docker-compose 定义文件示例 ``` #### 二、使用说明 - 当前目录下,重命名 `docker-compose-example.yml`, 为 `docker-compose.yml` - 打开 `docker-compose.yml` 按照需求删除或添加配置 - 命令行进入当前目录,执行 `docker-compose up -d ` 启动容器 > [mkcert](https://github.com/FiloSottile/mkcert)自签名的工具使用方法: > > ```php >mkcert -install >mkcert example.com "*.example.com" example.test localhost 127.0.0.1 ::1 >``` > [ngrok](https://ngrok.com/)工具使用方法: > > ```shell > ngrok http -config=/opt/ngrok/conf/ngrok.yml 8000 >``` #### 三、php常用扩展安装说明 Dockerfile文件: ```Dockerfile # 时区同步 && apk add --no-cache tzdata \\ && ln -sf /usr/share/zoneinfo/${TIMEZONE} /etc/localtime \ && echo "${TIMEZONE}" > /etc/timezone \ # php基本扩展 && apk add --no-cache libxml2-dev && docker-php-ext-install -j$(nproc) dom \ && apk add --no-cache curl-dev && docker-php-ext-install -j$(nproc) curl \ && apk add --no-cache libpng-dev && docker-php-ext-install -j$(nproc) gd \ && apk add --no-cache icu-dev && docker-php-ext-install -j$(nproc) intl \ && apk add --no-cache libedit-dev && docker-php-ext-install -j$(nproc) readline \ && apk add --no-cache libzip-dev && docker-php-ext-install -j$(nproc) bz2 zip \ && docker-php-ext-install -j$(nproc) pdo pdo_mysql mysqli iconv json mbstring opcache pcntl session sockets xml xmlreader xmlwriter soap opcache mysqli mysql pdo_mysql \ # 编译工具 && apk add --no-cache --virtual .build-deps autoconf make g++ libtool pcre-dev\ # memcache 扩展 && apk add --no-cache zlib zlib-dev\ && pecl install memcache\ && docker-php-ext-enable memcache \ # memcached 扩展 && apk add --no-cache zlib zlib-dev libmemcached libmemcached-dev cyrus-sasl-dev\ && pecl install memcached-2.2.0\ #php5用2.x php7 用3.x && docker-php-ext-enable memcached \ # redis扩展 && pecl install redis \ && docker-php-ext-enable redis \ # composer 安装 && php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ && php composer-setup.php \ && php -r "unlink('composer-setup.php');" \ && mv composer.phar /usr/local/bin/composer \ && chmod 755 /usr/local/bin/composer \ && composer config -g repo.packagist composer https://packagist.phpcomposer.com \ # 清理 && apk del .build-deps \ && rm -rf /var/cache/apk/* /tmp/* /var/tmp/* /usr/share/doc/* ```