laravel.dockerfile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. FROM ubuntu:16.04
  2. RUN apt update -yqq && apt install -yqq software-properties-common
  3. RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
  4. RUN apt update -yqq
  5. RUN apt install -yqq nginx git unzip php7.2 php7.2-common php7.2-cli php7.2-fpm php7.2-mysql
  6. RUN apt install -yqq php7.2-mbstring php7.2-xml
  7. RUN mkdir /composer
  8. WORKDIR /composer
  9. ENV PATH /composer:${PATH}
  10. RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  11. 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;"
  12. RUN php composer-setup.php
  13. RUN php -r "unlink('composer-setup.php');"
  14. COPY deploy/conf/* /etc/php/7.2/fpm/
  15. ADD ./ /laravel
  16. WORKDIR /laravel
  17. RUN mkdir -p /laravel/bootstrap/cache
  18. RUN mkdir -p /laravel/storage/framework/sessions
  19. RUN mkdir -p /laravel/storage/framework/views
  20. RUN mkdir -p /laravel/storage/framework/cache
  21. RUN chmod -R 777 /laravel
  22. RUN composer.phar install
  23. RUN php artisan config:cache
  24. RUN php artisan route:cache
  25. RUN chmod -R 777 /laravel
  26. CMD service php7.2-fpm start && \
  27. nginx -c /laravel/deploy/nginx.conf -g "daemon off;"