# ================================================== # DOCKERFILE SCRIPTCASE 9.12 - VERSÃO DEMONSTRAÇÃO # ================================================== # Imagem base: PHP 8.1 + Apache FROM php:8.2-apache # Instalar ferramentas básicas e bibliotecas necessárias RUN apt-get update && apt-get install -y \ wget unzip curl \ libfreetype6-dev libjpeg62-turbo-dev libpng-dev \ libzip-dev \ libxml2-dev libxslt1-dev \ libldap2-dev \ libcurl4-openssl-dev \ libonig-dev \ libpq-dev libsqlite3-dev \ && 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 RUN docker-php-ext-install gd zip mbstring xml soap xsl bcmath ldap # Instalar extensões PHP para bancos de dados 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 RUN echo 'max_execution_time = 3600' > /usr/local/etc/php/conf.d/scriptcase.ini \ && echo 'memory_limit = 1024M' >> /usr/local/etc/php/conf.d/scriptcase.ini \ && echo 'upload_max_filesize = 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 RUN cd /tmp \ && wget --user-agent="Mozilla/5.0" https://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.tar.gz \ && tar -xzf loaders.linux-x86_64.tar.gz \ && cp ixed.8.1.lin /usr/local/lib/php/extensions/no-debug-non-zts-20210902/ \ && 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 \ && rm -rf /tmp/* # Habilitar mod_rewrite do Apache RUN a2enmod rewrite # Criar diretório para Scriptcase com permissões corretas RUN mkdir -p /var/www/html/scriptcase \ && chown -R www-data:www-data /var/www/html # Porta padrão do Apache EXPOSE 80