FROM php:8.3-fpm

RUN apt-get update && \
    apt-get install -y \
    apache2 \
    libapache2-mod-fcgid \
    libpng-dev \
    libjpeg-dev \
    libcurl4-openssl-dev \
    libgd-dev \
    libgmp-dev \
    libzip-dev \
    pkg-config \
    nano \
    mariadb-client \
    libmariadb-dev \
    vim \
    locales \
    openssl \
    libonig-dev \
    libicu-dev \
    && rm -rf /var/lib/apt/lists/*

RUN docker-php-ext-install gmp

RUN docker-php-ext-install curl

RUN docker-php-ext-install gd

RUN docker-php-ext-install mbstring

RUN docker-php-ext-install mysqli

RUN docker-php-ext-install pdo_mysql

RUN docker-php-ext-install zip

RUN docker-php-ext-install intl

RUN docker-php-ext-enable \
    curl \
    gd \
    gmp \
    mbstring \
    mysqli \
    pdo_mysql \
    zip

RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

RUN echo "C.UTF-8 UTF-8" > /etc/locale.gen && \
    locale-gen

ENV LANG=C.UTF-8
ENV LANGUAGE=C
ENV LC_ALL=C.UTF-8

RUN mkdir /var/run/apache2/

RUN a2enmod rewrite

RUN a2enmod proxy_fcgi

RUN a2enmod setenvif

RUN a2enmod headers

RUN rm -fr /etc/apache2/sites-available/*

COPY apache/vhost/000-super-ltm.conf /etc/apache2/sites-available/000-default.conf

COPY apache/ports/super-ltm.ports.conf /etc/apache2/ports.conf

RUN a2ensite 000-default

COPY apache/init.sh /var/www/html/docker/apache/init.sh

RUN chmod +x /var/www/html/docker/apache/init.sh

RUN usermod --non-unique --uid 1000 www-data \
    && groupmod --non-unique --gid 1000 www-data \
    && chown -R www-data:www-data /var/www/ \
    && chown -R www-data:www-data /var/log/apache2/ \
    && chown -R www-data:www-data /var/run/apache2/

USER www-data

EXPOSE 80
