FROM php:8.3-apache # Install system dependencies and PHP extensions RUN apt-get update && apt-get install -y \ libsqlite3-dev \ libzip-dev \ libjpeg-dev \ libpng-dev \ libwebp-dev \ libgif-dev \ imagemagick \ libmagickwand-dev \ unzip \ && docker-php-ext-configure gd --with-jpeg --with-webp \ && docker-php-ext-install pdo_sqlite zip gd opcache \ && pecl install imagick \ && docker-php-ext-enable imagick # Set DocumentRoot ENV APACHE_DOCUMENT_ROOT=/var/www/html # Copy application files COPY . /var/www/html # Copy custom PHP configuration COPY /docker/php.ini /usr/local/etc/php/conf.d/php.ini # Create data directories and set permissions RUN mkdir -p /var/www/html/data/database /var/www/html/data/images/custom /var/www/html/data/images/backgrounds && \ chmod -R 775 /var/www/html/data # Copy and set up entrypoint COPY /docker/entrypoint.sh /usr/local/bin/entrypoint.sh RUN chmod +x /usr/local/bin/entrypoint.sh ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] # Expose port and start Apache EXPOSE 80 CMD ["apache2-foreground"]