Enxuto
This commit is contained in:
84
Dockerfile
84
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
|
||||
Reference in New Issue
Block a user