symfony.dockerfile 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. FROM ubuntu:16.04
  2. ARG DEBIAN_FRONTEND=noninteractive
  3. RUN apt-get update -yqq && apt-get install -yqq software-properties-common > /dev/null
  4. RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
  5. RUN apt-get update -yqq > /dev/null
  6. RUN apt-get install -yqq nginx git unzip php7.2 php7.2-common php7.2-cli php7.2-fpm php7.2-mysql > /dev/null
  7. RUN apt-get install php7.2-xml > /dev/null
  8. RUN mkdir /composer
  9. WORKDIR /composer
  10. ENV PATH /composer:${PATH}
  11. RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  12. RUN php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  13. RUN php composer-setup.php
  14. RUN php -r "unlink('composer-setup.php');"
  15. COPY deploy/conf/* /etc/php/7.2/fpm/
  16. ADD ./ /symfony
  17. WORKDIR /symfony
  18. ENV APP_ENV=prod
  19. RUN composer.phar install --quiet
  20. RUN php bin/console cache:clear --env=prod --no-debug --no-warmup
  21. RUN php bin/console cache:warmup --env=prod --no-debug
  22. RUN mkdir -p /symfony/var/cache/dev
  23. RUN chmod 777 -R /symfony/var/cache/dev
  24. RUN mkdir -p /symfony/var/log
  25. RUN chmod 777 -R /symfony/var/log
  26. CMD service php7.2-fpm start && \
  27. nginx -c /symfony/deploy/nginx.conf -g "daemon off;"