25 lines
1.0 KiB
Docker
25 lines
1.0 KiB
Docker
FROM dunglas/frankenphp:latest
|
|
|
|
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
|
|
|
|
ADD --chmod=0755 https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
|
|
RUN install-php-extensions pdo_pgsql zip
|
|
|
|
# The imported event data and the site's audience are both German-local;
|
|
# default to that instead of UTC so any "now"/"today" computation doesn't
|
|
# quietly disagree with the data for the two hours after every UTC midnight.
|
|
ENV TZ=Europe/Berlin
|
|
RUN echo "date.timezone = Europe/Berlin" > $PHP_INI_DIR/conf.d/timezone.ini
|
|
|
|
WORKDIR /app
|
|
COPY . .
|
|
RUN composer install --no-interaction --no-dev --optimize-autoloader \
|
|
&& php bin/console cache:clear --env=prod --no-debug
|
|
|
|
# Caddy's default site address in the base image's Caddyfile is
|
|
# {$SERVER_NAME:localhost}; a bare ":8000" (no hostname) makes it listen
|
|
# HTTP-only on that port, which is what we want — Traefik terminates TLS
|
|
# and forwards plain HTTP to this container.
|
|
ENV SERVER_NAME=:8000
|
|
EXPOSE 8000
|