# Use official PHP image with Apache FROM php:8.2-apache # Install system dependencies RUN apt-get update && apt-get install -y \ libpng-dev \ libjpeg-dev \ libfreetype6-dev \ zip \ unzip \ && rm -rf /var/lib/apt/lists/* # Configure PHP extensions RUN docker-php-ext-configure gd --with-freetype --with-jpeg \ && docker-php-ext-install -j$(nproc) gd # Enable Apache modules RUN a2enmod rewrite # Set working directory WORKDIR /var/www/html # Copy application files COPY public_html/ /var/www/html/ # Create DATA directory with proper permissions RUN mkdir -p /DATA && \ chown -R www-data:www-data /DATA && \ chmod -R 755 /DATA # Set permissions for web directory RUN chown -R www-data:www-data /var/www/html && \ chmod -R 755 /var/www/html # Configure PHP settings RUN echo "session.cookie_lifetime = 604800" >> /usr/local/etc/php/conf.d/custom.ini && \ echo "session.gc_maxlifetime = 604800" >> /usr/local/etc/php/conf.d/custom.ini # Expose port 80 EXPOSE 80 # Start Apache CMD ["apache2-foreground"]