FROM php:5.6.37-fpm-alpine3.7
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories \
&& apk update \
&& apk add --no-cache libldap openldap-dev libmcrypt-dev freetype-dev libjpeg-turbo-dev libpq git libpng-dev libxslt-dev postgresql-dev freetype-dev libvpx-dev readline-dev aspell-dev \
&& docker-php-ext-install ldap
扩展dockerfile
#FROM php5.6_base
FROM php5.6-base-alpine-v2
ENV PATH /root/.composer/vendor/bin:$PATH
# Installing PHP extensions
RUN ln -fs /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/ \
&& docker-php-ext-install iconv mcrypt gd pdo_mysql pdo_pgsql shmop pcntl zip bcmath simplexml xmlrpc soap pspell ldap mbstring opcache \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j$(nproc) gd \
#mongodb
&& pecl install mongodb && docker-php-ext-enable mongodb \
#igbinary
&& pecl install igbinary-2.0.8 && docker-php-ext-enable igbinary \
#memcached
&& pecl install memcached-2.2.0 && docker-php-ext-enable memcached \
#redis
&& pecl install redis-3.1.3 && docker-php-ext-enable redis \
# install composer
&& curl -sS https://getcomposer.org/installer | php -- --filename=composer --install-dir=/bin \
# install phpunit
#&& curl https://phar.phpunit.de/phpunit.phar -L > phpunit.phar \
&& curl https://phar.phpunit.de/phpunit-4.0.0.phar -L > phpunit.phar \
&& chmod +x phpunit.phar \
&& mv phpunit.phar /usr/local/bin/phpunit \
# && phpunit --version \
# Clean up, try to reduce image size (much as you can on Debian..)
&& docker-php-source delete
docker-compose
version: '2'
services:
redis:
image: "redis"
container_name: redis
ports:
- "6379:6379"
volumes:
- "/Users/liangzhaoxin/work/360/redis/data:/data"
command: redis-server --appendonly yes
networks:
- antispam
mydb:
container_name: mydb
image: "mysql:5.7"
ports:
- "3306:3306"
RUN:
volumes:
- "/Users/liangzhaoxin/work/360/mysql/conf:/etc/mysql/conf.d"
- "/Users/liangzhaoxin/work/360/mysql/logs:/logs"
- "/Users/liangzhaoxin/work/360/mysql/data:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: 123456
networks:
- antispam
php-fpm:
container_name: php5.6
privileged: true
image: "php:5.6-fpm"
ports:
- "9000:9000"
volumes:
- "/Users/liangzhaoxin/work/360/antispam:/www"
- "/Users/liangzhaoxin/work/360/php56/etc:/usr/local/etc"
environment:
- "TZ=Asia/Shanghai"
depends_on:
- mydb
- redis
links:
- mydb
command: php-fpm -F
networks:
- antispam
nginx:
container_name: nginx1122
privileged: true
image: "nginx:1.12.2"
ports:
- "8082:80"
- "443:443"
volumes:
- "/Users/liangzhaoxin/work/360/nginx:/etc/nginx"
- "/Users/liangzhaoxin/work/360/antispam:/www"
depends_on:
- php-fpm
links:
- php-fpm
networks:
- antispam
networks:
antispam:
driver: bridge
ipam:
config:
- subnet: 10.0.201.0/24