Skip to content

Multi Stage Dockerfile

Jefferson Souza edited this page Feb 24, 2018 · 1 revision

Você também pode utilizar o docker para executar parte dos passos do seu build (como uma Pipeline). O docker conta com o recurso de Multi Stage Dockerfile, a partir da versão 17.03.

Basicamente, com o Multistage Dockerfile, você pode utilizar em seu build múltiplos from, e o resultado do build será sempre o último from executado.

FROM composer as composer

COPY . /app

RUN composer install --ignore-platform-reqs --no-scripts

FROM nasajon/php:7.1-fpm

USER nginx

COPY --from=composer /app/ /var/www/html

USER root

RUN sed -i "s#root /var/www/html;#root /var/www/html/public;#" /etc/nginx/conf.d/default.conf && \
    echo 'security.limit_extensions = ' >> /etc/php7/php-fpm.conf && \
    sed -i 's/cgi.fix_pathinfo=0/cgi.fix_pathinfo=1/g' /etc/php7/php.ini
RUN chmod -fR 777 storage/logs && chmod -fR 777 storage/framework/cache
RUN php artisan cache:clear && php artisan config:cache

Clone this wiki locally