No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Dockerfile 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. FROM php:7.2-apache
  2. RUN apt-get -y update --fix-missing
  3. RUN apt-get upgrade -y
  4. # Install useful tools
  5. RUN apt-get -y install apt-utils nano wget dialog curl software-properties-common gnupg
  6. # Install useful npm
  7. RUN curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
  8. RUN echo 'deb https://deb.nodesource.com/node_10.x buster main' > /etc/apt/sources.list.d/nodesource.list
  9. RUN echo 'deb-src https://deb.nodesource.com/node_10.x buster main' >> /etc/apt/sources.list.d/nodesource.list
  10. RUN apt-get -y update
  11. RUN apt-get -y install nodejs
  12. # Install Yarn
  13. RUN curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
  14. RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
  15. RUN apt-get -y update
  16. RUN apt-get -y install yarn
  17. # Install useful cron
  18. RUN apt-get -y install cron
  19. # Install important libraries
  20. RUN apt-get -y install --fix-missing apt-utils build-essential git curl libcurl4 libcurl3-dev zip openssl
  21. # Composer
  22. RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
  23. # Install xdebug
  24. RUN pecl install xdebug-2.6.0
  25. RUN docker-php-ext-enable xdebug
  26. # Install redis
  27. RUN pecl install redis-4.0.1
  28. RUN docker-php-ext-enable redis
  29. # Other PHP7 Extensions
  30. RUN apt-get -y install libsqlite3-dev libsqlite3-0 mariadb-client
  31. RUN docker-php-ext-install pdo_mysql
  32. RUN docker-php-ext-install pdo_sqlite
  33. RUN docker-php-ext-install mysqli
  34. RUN docker-php-ext-install curl
  35. RUN docker-php-ext-install tokenizer
  36. RUN docker-php-ext-install json
  37. RUN apt-get -y install zlib1g-dev
  38. RUN docker-php-ext-install zip
  39. RUN apt-get -y install libicu-dev
  40. RUN docker-php-ext-install -j$(nproc) intl
  41. RUN docker-php-ext-install mbstring
  42. RUN docker-php-ext-install gettext
  43. RUN docker-php-ext-install bcmath
  44. RUN apt-get update; \
  45. apt-get install -y --no-install-recommends \
  46. libfreetype6-dev \
  47. libjpeg62-turbo-dev \
  48. libpng-dev \
  49. pkg-config \
  50. patch;
  51. ADD https://git.archlinux.org/svntogit/packages.git/plain/trunk/freetype.patch?h=packages/php /tmp/freetype.patch
  52. RUN docker-php-source extract; \
  53. cd /usr/src/php; \
  54. patch -p1 -i /tmp/freetype.patch; \
  55. rm /tmp/freetype.patch
  56. RUN docker-php-ext-configure gd --with-gd --with-freetype-dir
  57. #RUN docker-php-ext-install gd
  58. RUN docker-php-ext-install -j$(nproc) gd
  59. # Enable apache modules
  60. RUN a2enmod rewrite headers
  61. CMD ( cron -f & ) && apachectl -D FOREGROUND