Suggest a feature
×

Welcome to TagMyCode

Please login or create account to add a snippet.
0
0
 
0
Language: Bash
Posted by: Сергей Шевченко
Added: Dec 10, 2019 4:35 PM
Modified: Feb 3, 2020 11:48 AM
Views: 18
  1. FROM php:7.3-fpm
  2.  
  3. MAINTAINER Sergey Shevchenko <sergey.leonidovich.shevchenko@gmail.com>
  4.  
  5. ARG APPLICATION_PATH
  6. ARG IBS_BACKEND_NETWORK_SUBNET
  7. ARG NGINX_HOST_HTTP_PORT
  8. ARG NGINX_HOST_HTTPS_PORT
  9. ARG MYSQL_USER
  10. ARG MYSQL_PASSWORD
  11. ARG MYSQL_ROOT_PASSWORD
  12. ARG MYSQL_DATABASE
  13.  
  14. ENV APPLICATION_PATH ${APPLICATION_PATH}
  15. ENV IBS_BACKEND_NETWORK_SUBNET ${IBS_BACKEND_NETWORK_SUBNET}
  16. ENV NGINX_HOST_HTTP_PORT ${NGINX_HOST_HTTP_PORT}
  17. ENV NGINX_HOST_HTTPS_PORT ${NGINX_HOST_HTTPS_PORT}
  18. ENV MYSQL_USER ${MYSQL_USER}
  19. ENV MYSQL_PASSWORD ${MYSQL_PASSWORD}
  20. ENV MYSQL_ROOT_PASSWORD ${MYSQL_ROOT_PASSWORD}
  21. ENV MYSQL_DATABASE ${MYSQL_DATABASE}
  22. ENV XDEBUG_CONFIG: "remote_host=${IBS_BACKEND_NETWORK_SUBNET}.1 remote_enable=1"
  23. ENV PHP_IDE_CONFIG: "serverName=${IBS_BACKEND_NETWORK_SUBNET}.4"
  24.  
  25. # Ставим все необходимые для работы пакеты
  26. RUN apt-get update     \
  27.     && apt-get install -y \
  28.             curl          \
  29.             git           \
  30.             less          \
  31.             vim           \
  32.             zlib1g-dev    \
  33.             zip
  34.  
  35. # Устанавливаем php-расширения
  36. RUN docker-php-ext-install -j$(nproc) \
  37.     bcmath                            \
  38.     pdo_mysql
  39.  
  40. RUN pecl install \
  41.     xdebug
  42.     # grpc
  43.  
  44. # Копируем php-конфигурацию внутрь контейнера
  45. COPY ./build/development/php-fpm/conf.d/* /usr/local/etc/php/conf.d/
  46. COPY ./build/development/php-fpm/php.ini /usr/local/etc/php/php.ini
  47.  
  48. # Включаем расширение xdebug
  49. RUN docker-php-ext-enable xdebug
  50.  
  51. # Устанавливаем composer
  52. RUN curl -sS https://getcomposer.org/installer                \
  53.     | php -- --install-dir=/usr/local/bin --filename=composer
  54.  
  55. # Устанавливаем рабочую дирректорию
  56. WORKDIR ${APPLICATION_PATH}
  57.  
  58. # Entrypoint
  59. COPY ./build/development/php-fpm/entrypoint.sh /entrypoint.sh
  60. RUN chmod +x /entrypoint.sh
  61. ENTRYPOINT ["/entrypoint.sh"]
  62.  
  63. EXPOSE 9000
  64.  
  65. CMD ["php-fpm", "-F"]
  66.