dockerfile脚本
FROM centos:latest
MAINTAINER https://blog.csdn.net/lituxiu
ENV TIME_ZOME Asia/Shanghai
ARG WJ="nginx-1.15.7"
#wget http://nginx.org/download/nginx-1.15.7.tar.gz
#COPY nginx.conf /usr/local/nginx/
ADD $WJ.tar.gz /tmp
RUN yum -y install gcc gcc-c++ make openssl-devel pcre-devel zlib-devel \
&& useradd -s /sbin/nologin nginx \ #创建nginx用户关联nginx和php-fpm程序
&& mkdir -p /usr/local/nginx \
&& cd /tmp/$WJ \
&& ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-stream --with-http_ssl_module --with-http_stub_status_module \
&& make -j 4 \
&& make install \
&& echo "${TIME_ZOME}" > /etc/timezone \
&& ln -sf /usr/share/zoneinfo/${TIME_ZOME} /etc/localtime \
&& rm -rf /tmp/nginx* \
&& ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx \
#php是直接用第三方yum源epel安装的,指定安装7.2版本
&& yum install -y epel-release \
&& rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm \
&& yum -y install yum-utils \
&& yum-config-manager --enable remi-php72 \
&& yum -y install php php72-php-opcache php72-php-ldap php72-php-odbc php72-php-pear php72-php-xml php72-php-xmlrpc php72-php-soap curl curl-devel php72-php-mbstring php72-php-mysqlnd php72-php-fpm php72-php-gd \
&& sed -i "s/apache/nginx/g" /etc/opt/remi/php72/php-fpm.d/www.conf \
#把php-fpm的www.conf配置里的user和group都nginx
&& yum clean all \
&& yum -y remove gcc gcc-c++ make \
&& chmod -R 777 /var/opt/remi/php72/lib/php/session/
#设置权限php的session目录权限,否则跑项目里,会提示"Permission denied"
WORKDIR /usr/local/nginx/
EXPOSE 80
CMD /opt/remi/php72/root/sbin/php-fpm && nginx -g "daemon off;"
#上一行CMD同时启动php-fpm服务,不过最后一个服务一定要前台运行,要不创建的镜像后台会启动不起来(docker容器运行的原理)