You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
909 B
Docker
36 lines
909 B
Docker
FROM composer AS composer
|
|
COPY composer.json /app/
|
|
RUN composer install --no-dev
|
|
RUN composer dump-autoload --optimize
|
|
|
|
FROM node:8-alpine as themes
|
|
WORKDIR /app
|
|
COPY frontend/ /app/frontend
|
|
COPY .babelrc package.json webpack.config.js /app/
|
|
RUN apk add --no-cache yarn
|
|
RUN yarn install
|
|
RUN yarn build
|
|
|
|
# Intermediate container for less layers
|
|
FROM alpine as data
|
|
COPY config/ /app/config
|
|
COPY db/ /app/db
|
|
COPY includes/ /app/includes
|
|
COPY locale/ /app/locale
|
|
COPY public/ /app/html
|
|
COPY src/ /app/src
|
|
COPY templates/ /app/templates
|
|
|
|
COPY --from=composer /app/vendor/ /app/vendor
|
|
COPY --from=composer /app/composer.lock /app/
|
|
|
|
COPY --from=themes /app/public/assets /app/html/assets
|
|
COPY --from=themes /app/yarn.lock /app/
|
|
|
|
RUN rm -f /app/config/config.php
|
|
|
|
FROM php:7-fpm-alpine
|
|
COPY --from=data /app/ /var/www
|
|
RUN apk add --no-cache icu-dev gettext-dev && \
|
|
docker-php-ext-install intl gettext pdo_mysql
|