25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 

84 satır
3.6 KiB

  1. FROM php:8.1-apache
  2. ENV COMPOSER_MEMORY_LIMIT -1
  3. ENV APACHE_DOCUMENT_ROOT /var/www/html/contao/public
  4. ENV APACHE_SERVER_NAME localhost
  5. WORKDIR /var/www/html
  6. RUN apt-get update
  7. RUN apt-get install -y \
  8. libfreetype6-dev \
  9. libjpeg62-turbo-dev \
  10. libpng-dev \
  11. libicu-dev \
  12. && docker-php-ext-install -j$(nproc) iconv \
  13. && docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-freetype=/usr/include/ \
  14. && docker-php-ext-install -j$(nproc) gd \
  15. && docker-php-ext-install -j$(nproc) intl \
  16. && docker-php-ext-install -j$(nproc) pdo_mysql
  17. RUN apt-get install -y git zip
  18. RUN pecl install xdebug \
  19. && docker-php-ext-enable xdebug \
  20. && echo "xdebug.mode=debug" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
  21. && echo "xdebug.client_host = host.docker.internal" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
  22. && echo "xdebug.start_with_request=yes" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
  23. && echo 'xdebug.discover_client_host=1' >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
  24. && echo 'xdebug.log=/var/www/var/log/xdebug.log' >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
  25. && echo 'xdebug.log_level=0' >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
  26. COPY .docker/contao/install_composer.sh /install_composer.sh
  27. RUN chmod +x /install_composer.sh \
  28. && cd / \
  29. && /install_composer.sh \
  30. && rm /install_composer.sh \
  31. && mv /composer.phar /usr/local/bin/composer
  32. RUN a2enmod rewrite && a2enmod ssl && a2enmod socache_shmcb
  33. #RUN a2enmod rewrite && a2enmod ssl
  34. #COPY ./.docker/apache/httpd.conf /etc/apache2/sites-available/httpd.conf
  35. #COPY ./.docker/apache/httpd.conf /etc/apache2/conf-available/httpd.conf
  36. COPY ./cert/mycert.crt /etc/ssl/certs/mycert.crt
  37. COPY ./cert/mycert.key /etc/ssl/private/mycert.key
  38. RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
  39. RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
  40. #RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/httpd.conf
  41. #RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/httpd.conf
  42. #RUN sed -i '/SSLCertificateFile.*snakeoil\.pem/c\SSLCertificateFile \/etc\/ssl\/certs\/mycert.crt' /etc/apache2/sites-available/*.conf
  43. #RUN sed -i '/SSLCertificateKeyFile.*snakeoil\.key/cSSLCertificateKeyFile /etc/ssl/private/mycert.key\' /etc/apache2/sites-available/*.conf
  44. #RUN sed -i '/SSLCertificateFile.*snakeoil\.pem/c\SSLCertificateFile \/etc\/ssl\/certs\/mycert.crt' /etc/apache2/sites-enabled/*.conf
  45. #RUN sed -i '/SSLCertificateKeyFile.*snakeoil\.key/cSSLCertificateKeyFile /etc/ssl/private/mycert.key\' /etc/apache2/sites-enabled/*.conf
  46. RUN sed -i '/SSLCertificateFile.*snakeoil\.pem/c\SSLCertificateFile /etc/ssl/certs/mycert.crt' /etc/apache2/sites-available/default-ssl.conf
  47. RUN sed -i '/SSLCertificateKeyFile.*snakeoil\.key/cSSLCertificateKeyFile /etc/ssl/private/mycert.key\' /etc/apache2/sites-available/default-ssl.conf
  48. RUN a2ensite default-ssl
  49. RUN apt-get update && apt-get upgrade -y
  50. #RUN a2ensite httpd
  51. RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
  52. COPY app/contao/composer.json /var/www/html/contao/composer.json
  53. COPY .docker/contao/init.sh /init.sh
  54. RUN chown -R www-data:www-data /usr/local/bin/composer
  55. RUN chown -R www-data:www-data /var/www/html/
  56. RUN chmod 755 /init.sh
  57. RUN chmod +x /init.sh
  58. ENV PATH="$PATH"
  59. RUN rm -rf /var/www/html/contao/var/cache/*
  60. EXPOSE 80
  61. EXPOSE 443
  62. #USER www-data
  63. ENTRYPOINT ["/init.sh"]
  64. CMD ["apache2-foreground"]