Session
This commit is contained in:
46
Dockerfile
46
Dockerfile
@@ -2,67 +2,63 @@
|
|||||||
# DOCKERFILE SCRIPTCASE 9.12 - VERSÃO DEMONSTRAÇÃO
|
# DOCKERFILE SCRIPTCASE 9.12 - VERSÃO DEMONSTRAÇÃO
|
||||||
# ==================================================
|
# ==================================================
|
||||||
|
|
||||||
# Imagem base: PHP 8.1 + Apache (homologado pelo Scriptcase)
|
# Imagem base: PHP 8.1 + Apache
|
||||||
FROM php:8.1-apache
|
FROM php:8.1-apache
|
||||||
|
|
||||||
# Instalar ferramentas básicas (download, extração, requisições)
|
# Instalar ferramentas básicas e bibliotecas necessárias
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
wget unzip curl \
|
wget unzip curl \
|
||||||
# Bibliotecas para extensão GD (manipulação de imagens)
|
|
||||||
libfreetype6-dev libjpeg62-turbo-dev libpng-dev \
|
libfreetype6-dev libjpeg62-turbo-dev libpng-dev \
|
||||||
# Biblioteca para manipulação de arquivos ZIP
|
|
||||||
libzip-dev \
|
libzip-dev \
|
||||||
# Bibliotecas para processamento XML/XSLT
|
|
||||||
libxml2-dev libxslt1-dev \
|
libxml2-dev libxslt1-dev \
|
||||||
# Biblioteca para autenticação LDAP
|
|
||||||
libldap2-dev \
|
libldap2-dev \
|
||||||
# Biblioteca para requisições HTTP
|
|
||||||
libcurl4-openssl-dev \
|
libcurl4-openssl-dev \
|
||||||
# Biblioteca para strings multibyte (UTF-8)
|
|
||||||
libonig-dev \
|
libonig-dev \
|
||||||
# Bibliotecas para bancos de dados PostgreSQL e SQLite
|
|
||||||
libpq-dev libsqlite3-dev \
|
libpq-dev libsqlite3-dev \
|
||||||
# Limpar cache para reduzir tamanho da imagem
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Configurar extensões que precisam de parâmetros especiais
|
# Configurar extensões que precisam de parâmetros especiais
|
||||||
RUN docker-php-ext-configure gd --with-freetype --with-jpeg \
|
RUN docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/
|
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/
|
||||||
|
|
||||||
# Instalar extensões PHP obrigatórias para Scriptcase (grupo 1)
|
# Instalar extensões PHP obrigatórias para Scriptcase
|
||||||
RUN docker-php-ext-install gd zip mbstring xml soap xsl bcmath ldap
|
RUN docker-php-ext-install gd zip mbstring xml soap xsl bcmath ldap
|
||||||
|
|
||||||
# Instalar extensões PHP para bancos de dados (grupo 2)
|
# Instalar extensões PHP para bancos de dados
|
||||||
RUN docker-php-ext-install pdo pdo_mysql pdo_sqlite mysqli pdo_pgsql pgsql
|
RUN docker-php-ext-install \
|
||||||
|
pdo \
|
||||||
|
pdo_mysql \
|
||||||
|
pdo_pgsql \
|
||||||
|
pgsql \
|
||||||
|
pdo_sqlite \
|
||||||
|
mysqli
|
||||||
|
|
||||||
|
# Criar diretório de sessão PHP com permissão para Apache
|
||||||
|
RUN mkdir -p /var/lib/php/sessions \
|
||||||
|
&& chown -R www-data:www-data /var/lib/php/sessions \
|
||||||
|
&& chmod 1733 /var/lib/php/sessions
|
||||||
|
|
||||||
# Configurar limites PHP otimizados para Scriptcase
|
# Configurar limites PHP otimizados para Scriptcase
|
||||||
RUN echo 'max_execution_time = 3600' > /usr/local/etc/php/conf.d/scriptcase.ini \
|
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 \
|
&& 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 \
|
&& 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 \
|
||||||
&& echo 'post_max_size = 200M' >> /usr/local/etc/php/conf.d/scriptcase.ini
|
&& echo 'session.save_path = "/var/lib/php/sessions"' >> /usr/local/etc/php/conf.d/scriptcase.ini
|
||||||
|
|
||||||
# Instalar SourceGuardian (obrigatório para Scriptcase funcionar)
|
# Instalar SourceGuardian
|
||||||
RUN cd /tmp \
|
RUN cd /tmp \
|
||||||
# Simular navegador para evitar bloqueio do site
|
|
||||||
&& wget --user-agent="Mozilla/5.0" https://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.tar.gz \
|
&& wget --user-agent="Mozilla/5.0" https://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.tar.gz \
|
||||||
# Extrair arquivos do SourceGuardian
|
|
||||||
&& tar -xzf loaders.linux-x86_64.tar.gz \
|
&& tar -xzf loaders.linux-x86_64.tar.gz \
|
||||||
# Copiar loader para diretório de extensões PHP 8.1
|
|
||||||
&& cp ixed.8.1.lin /usr/local/lib/php/extensions/no-debug-non-zts-20210902/ \
|
&& cp ixed.8.1.lin /usr/local/lib/php/extensions/no-debug-non-zts-20210902/ \
|
||||||
# Configurar como extensão Zend (não extensão comum)
|
|
||||||
&& echo "zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20210902/ixed.8.1.lin" > /usr/local/etc/php/conf.d/sourceguardian.ini \
|
&& echo "zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20210902/ixed.8.1.lin" > /usr/local/etc/php/conf.d/sourceguardian.ini \
|
||||||
# Limpar arquivos temporários
|
|
||||||
&& rm -rf /tmp/*
|
&& rm -rf /tmp/*
|
||||||
|
|
||||||
# Habilitar mod_rewrite do Apache (URLs amigáveis)
|
# Habilitar mod_rewrite do Apache
|
||||||
RUN a2enmod rewrite
|
RUN a2enmod rewrite
|
||||||
|
|
||||||
# Criar diretório para Scriptcase com permissões corretas
|
# Criar diretório para Scriptcase com permissões corretas
|
||||||
RUN mkdir -p /var/www/html/scriptcase \
|
RUN mkdir -p /var/www/html/scriptcase \
|
||||||
&& chown -R www-data:www-data /var/www/html
|
&& chown -R www-data:www-data /var/www/html
|
||||||
|
|
||||||
# Documentar que container usa porta 80
|
# Porta padrão do Apache
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
Reference in New Issue
Block a user