Files

40 lines
1.0 KiB
Docker

FROM php:8.2-apache
# Set Philippines timezone
ENV TZ=Asia/Manila
# Install required packages + PHP extensions
RUN apt-get update && apt-get install -y tzdata && \
docker-php-ext-install mysqli pdo pdo_mysql
# Configure system timezone
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \
echo $TZ > /etc/timezone
# Set PHP timezone
RUN echo "date.timezone = Asia/Manila" > /usr/local/etc/php/conf.d/timezone.ini
# Enable Apache modules
RUN a2enmod rewrite headers
# Copy project
COPY . /var/www/html/
# Fix permissions
RUN chown -R www-data:www-data /var/www/html/
# Ensure Apache allows .htaccess
RUN sed -i 's/AllowOverride None/AllowOverride All/g' /etc/apache2/apache2.conf
# Optional Apache config
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
# Copy production PHP config
RUN cp "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
# Allow environment variables in PHP
RUN sed -i 's/variables_order = "GPCS"/variables_order = "EGPCS"/g' "$PHP_INI_DIR/php.ini"
EXPOSE 80
CMD ["apache2-foreground"]