FROM serversideup/php:8.1-fpm-apache

# Initial operations that require root
USER root

RUN apt-get update && apt-get install -y \
    ffmpeg \
    cron \
    && rm -rf /var/lib/apt/lists/*

# Install PHP extensions (needs root)
RUN install-php-extensions \
    curl \
    gd \
    mbstring \
    json \
    fileinfo \
    zip \
    openssl \
    exif \
    xdebug

COPY docker/config/apache-CGIPassAuth.conf /etc/apache2/conf-enabled/apache-CGIPassAuth.conf

# Switch back to www-data user
USER www-data

COPY --chown=www-data:www-data docker/config/php.ini /usr/local/etc/php/conf.d/zzz-custom-php.ini

# Set up www-data user crontab
COPY --chown=www-data:www-data docker/config/www-data-crontab /tmp/crontab
RUN crontab /tmp/crontab && rm -f /tmp/crontab

# Copy our app files
COPY --chown=www-data:www-data . /var/www