Docker
构建Apache+php7.4镜像
构建Apache+php7.4镜像
最近接了一个单,项目是Thinkphp6.0二开,为了方便本地调试部署,直接使用apache,而不使用Nginx,于是决定弄一个php7.4+Apache镜像,方便后面开发使用,下面跟大家分享构建镜像配置
FROM php:7.4-apache # 作者 LABEL MAINTAINER="hzx790254812@gmail.com" # 时区 ENV TZ "Asia/Shanghai" RUN echo ${TZ} >/etc/timezone #配置apache配置 RUN ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load \ && sed -i 's/AllowOverride None/AllowOverride All/g' /etc/apache2/apache2.conf # 安装postgresql扩展 RUN apt-get update && apt-get install -y libpq-dev \ && docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \ && docker-php-ext-install pdo pdo_pgsql # 安装mysql扩展 RUN docker-php-ext-install pdo pdo_mysql # 安装zip扩展所需的依赖扩展 RUN apt-get install -y zlib1g-dev RUN apt-get install -y libzip-dev # 安装GD RUN apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev RUN docker-php-source extract RUN cd /usr/src/php/ext/gd RUN docker-php-ext-configure gd --with-webp=/usr/include/webp --with-jpeg=/usr/include --with-freetype=/usr/include/freetype2/ RUN docker-php-ext-install gd
构建过程我们设置了当前时区,以及修改apache配置,防止后面访问页面的时候出现以下错误
apache The requested URL was not found on this server.
这也是我为什么要自己重新构建一个镜像,而不是直接拿官方镜像进行使用,可以省得启动容器时候去修改配置。
由于默认镜像php是不带pdo_mysql扩展,所以这里我们也把扩展装上,然后我们可以执行以下命令生成镜像
docker build -t hongzhuangxian/php7.4-apache .
生成完成后,可以推送到docker hub镜像仓库
docker push hongzhuangxian/php7.4-apache
这样我们就成功构建一个适合我们使用的php7.4+apache镜像。
杠杠滴
回复欢迎欢迎~
回复