版本说明:
Debian 10.6 Buster
Docker 20.10
PHP 7.3
1、
cd /data/docker-env #进入
mkdir php && cd php #创建并进入php目录
touch Dockerfile && vim Dockerfile #创建并编写我们的Dockerfile
填入以下内容
# PHP官方镜像
FROM php:7.3-fpm
#GD库扩展
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
zlib1g-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 \
&& docker-php-ext-install opcache
# 安装zip扩展所需的依赖扩展
RUN apt-get install -y --no-install-recommends zlib1g-dev && apt-get install -y --no-install-recommends libzip-dev
RUN apt-get clean
# rm -rf /var/cache/apk/* && rm -rf /var/lib/apt/lists/* && apt-get autoremove
RUN docker-php-ext-install zip
#redis 扩展
RUN pecl install redis-5.3.7 && docker-php-ext-enable redis
#bcmath扩展
RUN docker-php-ext-install -j$(nproc) bcmath
#PDO扩展
RUN docker-php-ext-install pdo pdo_mysql
#mysqli扩展
RUN cd /usr/local/bin && ./docker-php-ext-install mysqli
# PHP官方镜像
FROM php:7.4-fpm
#GD库扩展
RUN apt-get update && apt-get install -y \
libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev \
&& docker-php-source extract \
&& docker-php-ext-configure gd \
--with-jpeg=/usr/include \
--with-freetype=/usr/include/ \
&& docker-php-ext-install gd \
&& docker-php-ext-enable gd
RUN apt-get install -y zlib1g-dev && apt-get install -y libzip-dev && docker-php-ext-install zi
#redis 扩展
RUN pecl install redis-5.2.2 && docker-php-ext-enable redis
#PDO扩展
RUN docker-php-ext-install pdo pdo_mysql
#mysqli扩展
RUN cd /usr/local/bin && ./docker-php-ext-install mysqli
编辑完Dockerfile文件
:wq #保存退出
3、将我们的Dockerfile文件构建成php镜像
docker build -t php_debian:1.0 . #注意,最后有个点(表示生成的镜像放到当前目录下)! 1.0代表我们定义的版本号
看到build successfully 就表示我们成功构建了php镜像。

4、生成我们php的容器,并命名叫做myphp
docker run --name myphp -p 9000:9000 -v /pan/docker-env/www:/www -d php_debian:1.0
此时 docker ps ,就能看到我们php容器已经在后台运行起来了

123