# =========================================
# Plataforma de Cursos en Línea
# PHP 8.2 + Apache + FFmpeg
# =========================================

FROM php:8.2-apache

# --- Dependencias del sistema + FFmpeg ---
RUN apt-get update && apt-get install -y --no-install-recommends \
    libpq-dev \
    ffmpeg \
    && docker-php-ext-install pdo pdo_pgsql \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

# --- Habilitar mod_rewrite de Apache ---
RUN a2enmod rewrite

# --- Configuración de Apache ---
ENV APACHE_DOCUMENT_ROOT=/var/www/html

# Copiar configuración personalizada de Apache
COPY docker/apache.conf /etc/apache2/sites-available/000-default.conf

# --- Copiar código fuente ---
COPY . /var/www/html/

# --- Permisos para storage ---
RUN mkdir -p /var/www/html/storage \
    && chown -R www-data:www-data /var/www/html/storage \
    && chmod -R 775 /var/www/html/storage

# --- PHP config (upload de videos grandes) ---
RUN echo "upload_max_filesize = 500M" > /usr/local/etc/php/conf.d/uploads.ini \
    && echo "post_max_size = 512M" >> /usr/local/etc/php/conf.d/uploads.ini \
    && echo "max_execution_time = 300" >> /usr/local/etc/php/conf.d/uploads.ini \
    && echo "memory_limit = 256M" >> /usr/local/etc/php/conf.d/uploads.ini

EXPOSE 80

CMD ["apache2-foreground"]