# Imagem base com PHP, Apache e extensões necessárias FROM php:8.1-apache # Configura o timezone ENV TZ=America/Sao_Paulo # Habilita módulos do Apache necessários RUN a2enmod rewrite # Instala dependências do sistema RUN apt-get update && apt-get install -y \ libicu-dev \ libzip-dev \ libjpeg-dev \ libpng-dev \ libfreetype6-dev \ unzip \ git \ zip \ && docker-php-ext-configure gd --with-freetype --with-jpeg \ && docker-php-ext-install intl zip pdo pdo_mysql gd \ && apt-get clean # Configura o diretório padrão do Apache WORKDIR /var/www/html # Define o índice padrão do Apache RUN echo "DirectoryIndex login.php index.php" > /etc/apache2/conf-available/directoryindex.conf && \ a2enconf directoryindex # Copia os arquivos da aplicação empacotada COPY app.zip /var/www/html/ RUN unzip -o app.zip -d /var/www/html && rm app.zip # Remove diretório 'files' criado pelo zip e cria link simbólico para o volume RUN rm -rf /var/www/html/files && ln -s /files /var/www/html/files # Ajusta permissões do volume montado RUN chown -R www-data:www-data /files && chmod -R 775 /files # Copia o files.zip para o container (caso queira descompactar manualmente) COPY files.zip /files.zip # Ajusta permissões da aplicação RUN chown -R www-data:www-data /var/www/html # Expõe a porta 80 EXPOSE 80 # Inicializa o Apache em foreground CMD ["apache2-foreground"]