diff --git a/Dockerfile b/Dockerfile index 0c694b2..0733029 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,13 +1,10 @@ -# Imagem base com PHP 8.1 e Apache FROM php:8.1-apache -# Configura o timezone ENV TZ=America/Sao_Paulo -# Habilita o mod_rewrite do Apache RUN a2enmod rewrite -# Instala dependências e extensões PHP necessárias +# Dependências + extensões PHP + Redis RUN apt-get update && apt-get install -y \ libicu-dev \ libzip-dev \ @@ -18,32 +15,23 @@ RUN apt-get update && apt-get install -y \ git \ zip \ && docker-php-ext-configure gd --with-freetype --with-jpeg \ - && docker-php-ext-install intl zip pdo pdo_mysql gd \ + && docker-php-ext-install intl zip pdo pdo_mysql gd opcache \ + && pecl install redis && docker-php-ext-enable redis \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -# Habilita e configura OPcache -RUN docker-php-ext-install opcache - -# Arquivo customizado de configuração do PHP com OPcache otimizado COPY opcache.ini /usr/local/etc/php/conf.d/opcache.ini -# Define diretório de trabalho padrão WORKDIR /var/www/html -# Define ordem dos arquivos index RUN echo "DirectoryIndex login.php index.php" > /etc/apache2/conf-available/directoryindex.conf \ && a2enconf directoryindex -# Copia e descompacta os arquivos da aplicação COPY app.zip /var/www/html/ RUN unzip -o app.zip -d /var/www/html && rm app.zip -# Permissões para o Apache RUN chown -R www-data:www-data /var/www/html -# Porta HTTP padrão EXPOSE 80 -# Inicia o Apache no foreground CMD ["apache2-foreground"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..fae06f2 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,18 @@ +version: '3.8' + +services: + web: + build: . + container_name: php_apache + ports: + - "8080:80" + volumes: + - .:/var/www/html + depends_on: + - redis + + redis: + image: redis:alpine + container_name: redis_cache + ports: + - "6379:6379"