From aebaf427f4d59db675218b5f4849c012754fb3e9 Mon Sep 17 00:00:00 2001 From: wander Date: Tue, 26 May 2026 21:54:49 -0300 Subject: [PATCH] Enxuto --- Dockerfile | 84 +++++++++++++++++++----------------------------------- 1 file changed, 29 insertions(+), 55 deletions(-) diff --git a/Dockerfile b/Dockerfile index c8ceeae..3141557 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,56 +1,30 @@ -# ================================================== -# DOCKERFILE SCRIPTCASE 9.12 - VERSÃO DEMONSTRAÇÃO - Produção -# ================================================== - -# Imagem base: PHP 8.1 + Apache (homologado pelo Scriptcase) -FROM php:8.1-apache - -# Instalar ferramentas básicas (download, extração, requisições) -RUN apt-get update && apt-get install -y \ - wget unzip curl \ - # Bibliotecas para extensão GD (manipulação de imagens) - libfreetype6-dev libjpeg62-turbo-dev libpng-dev \ - # Biblioteca para manipulação de arquivos ZIP - libzip-dev \ - # Bibliotecas para processamento XML/XSLT - libxml2-dev libxslt1-dev \ - # Biblioteca para autenticação LDAP - libldap2-dev \ - # Biblioteca para requisições HTTP - libcurl4-openssl-dev \ - # Biblioteca para strings multibyte (UTF-8) - libonig-dev \ - # Bibliotecas para bancos de dados PostgreSQL e SQLite - libpq-dev libsqlite3-dev \ - # Limpar cache para reduzir tamanho da imagem - && rm -rf /var/lib/apt/lists/* - -# Configurar extensões que precisam de parâmetros especiais -RUN docker-php-ext-configure gd --with-freetype --with-jpeg \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ - -# Instalar extensões PHP obrigatórias para Scriptcase (grupo 1) -RUN docker-php-ext-install gd zip mbstring xml soap xsl bcmath ldap - -# Instalar extensões PHP para bancos de dados (grupo 2) -RUN docker-php-ext-install pdo pdo_mysql pdo_sqlite mysqli - -# Configurar limites PHP otimizados para Scriptcase -RUN echo 'max_execution_time = 3600' > /usr/local/etc/php/conf.d/scriptcase.ini \ - # Memória para processamento de dados volumosos - && echo 'memory_limit = 1024M' >> /usr/local/etc/php/conf.d/scriptcase.ini \ - # Upload de arquivos grandes (planilhas, imagens) - && echo 'upload_max_filesize = 200M' >> /usr/local/etc/php/conf.d/scriptcase.ini \ - # POST de formulários com muito conteúdo - && echo 'post_max_size = 200M' >> /usr/local/etc/php/conf.d/scriptcase.ini - - -# Habilitar mod_rewrite do Apache (URLs amigáveis) -RUN a2enmod rewrite - -# Criar diretório para Scriptcase com permissões corretas -RUN mkdir -p /var/www/html/producao \ - && chown -R www-data:www-data /var/www/html - -# Documentar que container usa porta 80 +FROM php:8.1-apache +# Dockerfile Producao + +# Instalar extensões PHP básicas +RUN apt-get update && apt-get install -y \ + libfreetype6-dev libjpeg62-turbo-dev libpng-dev \ + libzip-dev libxml2-dev libonig-dev \ + && docker-php-ext-configure gd --with-freetype --with-jpeg \ + && docker-php-ext-install -j$(nproc) gd \ + && docker-php-ext-install pdo pdo_mysql mysqli zip mbstring xml \ + && rm -rf /var/lib/apt/lists/* + +# Configurações PHP para pedagogico_iemab +RUN echo 'display_errors = Off' > /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'max_execution_time = 300' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'max_input_time = 300' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'max_input_vars = 3000' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'memory_limit = 512M' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'post_max_size = 200M' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'session.gc_maxlifetime = 7200' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'upload_max_filesize = 100M' >> /usr/local/etc/php/conf.d/pedagogico.ini \ + && echo 'zlib.output_compression = Off' >> /usr/local/etc/php/conf.d/pedagogico.ini + +# Habilitar mod_rewrite +RUN a2enmod rewrite + +# Configurar permissões +RUN chown -R www-data:www-data /var/www/html + EXPOSE 80 \ No newline at end of file