engelsystem/contrib/Dockerfile

49 lines
1.5 KiB
Docker
Raw Normal View History

# Setup
ARG NGINX_IMAGE=engelsystem-nginx:latest
# composer install
2018-02-08 22:56:44 +01:00
FROM composer AS composer
2019-05-31 04:43:03 +02:00
COPY ./ /app/
RUN composer --no-ansi install --no-dev --ignore-platform-reqs
2018-08-20 23:21:02 +02:00
RUN composer --no-ansi dump-autoload --optimize
2018-02-08 22:56:44 +01:00
# Use frontend container for assets
FROM ${NGINX_IMAGE} AS frontend
2018-02-08 22:56:44 +01:00
# Intermediate container for less layers
FROM alpine as data
2018-09-03 21:56:49 +02:00
COPY bin/ /app/bin
COPY config/ /app/config
COPY db/ /app/db
COPY import/ /app/import
COPY includes/ /app/includes
2018-08-20 23:21:02 +02:00
COPY public/ /app/public
COPY --from=frontend /var/www/public/assets/ /app/public/assets
COPY resources/lang /app/resources/lang
COPY resources/views /app/resources/views
COPY src/ /app/src
COPY storage/ /app/storage
2018-08-20 23:21:02 +02:00
COPY composer.json LICENSE package.json README.md /app/
COPY --from=composer /app/vendor/ /app/vendor
COPY --from=composer /app/composer.lock /app/
2018-02-08 22:56:44 +01:00
RUN find /app/storage/ -type f -not -name .gitignore -exec rm {} \;
RUN rm -f /app/import/* /app/config/config.php
# Build the PHP container
FROM php:7-fpm-alpine
2018-08-20 23:21:02 +02:00
WORKDIR /var/www
RUN apk add --no-cache icu-dev && \
docker-php-ext-install intl pdo_mysql
COPY --from=data /app/ /var/www
RUN chown -R www-data:www-data /var/www/import/ /var/www/storage/ && \
2018-09-20 17:37:41 +02:00
rm -r /var/www/html
2018-08-13 16:30:27 +02:00
ENV TRUSTED_PROXIES 10.0.0.0/8,::ffff:10.0.0.0/8,\
127.0.0.0/8,::ffff:127.0.0.0/8,\
172.16.0.0/12,::ffff:172.16.0.0/12,\
192.168.0.0/16,::ffff:192.168.0.0/16,\
::1/128,fc00::/7,fec0::/10