FROM php:7.4.33-fpm
#FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/php:7.4.33-fpm



# 更新软件包列表并安装编译相关依赖以及wget工具
RUN apt-get update && \
    apt-get install -y  gd-dev  build-essential  libwebp-dev libfreetype6-dev libpng-dev libjpeg-dev libzip-dev libxslt-dev libicu-dev libpcre3-dev gcc zlib1g-dev wget librdkafka-dev && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*



RUN pecl install -o -f redis rdkafka  mongodb &&\
    php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
    php composer-setup.php --quiet --install-dir=/usr/bin --filename=composer && \
    rm composer-setup.php && \
    docker-php-ext-install   pdo_mysql mysqli  exif intl xsl soap zip opcache 



#RUN docker-php-ext-configure gd
#RUN docker-php-ext-install gd    
 

RUN docker-php-ext-configure gd \
        --with-freetype=/usr/include/ \
        --with-jpeg=/usr/include/ 



RUNdocker-php-ext-install -j$(nproc) gd 



#http://nginx.org/download/nginx-1.25.4.tar.gz
# 将本地的nginx-1.25.4目录添加到镜像中（假设你已经提前准备好了这个目录及内容在和Dockerfile同级的目录下）
ADD nginx-1.26.1 /nginx-1.26.1

# 创建nginx相关的临时目录和日志目录
RUN mkdir /tmp/nginx
RUN mkdir /var/www/logs

# 进入nginx源码目录进行配置、编译和安装
RUN cd /nginx-1.26.1 && \
   ./configure --prefix=/etc/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --pid-path=/var/run/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --http-client-body-temp-path=/tmp/nginx/client_temp \
    --http-proxy-temp-path=/tmp/nginx/proxy_temp \
    --http-fastcgi-temp-path=/tmp/nginx/fastcgi_temp \
    --http-uwsgi-temp-path=/tmp/nginx/uwsgi_temp \
    --http-scgi-temp-path=/tmp/nginx/scgi_temp && \
    make && \
    make install

# 将本地src目录下的文件添加到容器内的/var/www/html/目录下（假设src目录包含你的网站相关文件）
ADD src/ /var/www/html/

# 复制新的nginx配置文件到容器内的/etc/nginx/nginx.conf
COPY conf_new/nginx.conf /etc/nginx/nginx.conf

# 复制php-fpm相关配置文件
COPY php-fpm/www.conf /usr/local/etc/php-fpm.d/www.conf
COPY php-fpm/php.ini /usr/local/etc/php/php.ini

# 修改/var/www/html目录的属主属组为www-data，确保nginx和php-fpm有权限访问
RUN chown -R www-data:www-data /var/www/html

# 暴露80端口，对应nginx常用的HTTP端口
EXPOSE 80

# 启动nginx和php-fpm服务
CMD ["sh", "-c", "nginx && php-fpm"]