47 lines
1.3 KiB
Docker
47 lines
1.3 KiB
Docker
# ==========================================
|
||
# GardenPlan – PHP-FPM Dockerfile
|
||
# Symfony 7 / PHP 8.2 + erforderliche Extensions
|
||
# ==========================================
|
||
|
||
FROM php:8.3-fpm-bookworm AS base
|
||
|
||
# System-Abhängigkeiten installieren
|
||
RUN apt-get update && apt-get install -y \
|
||
git \
|
||
curl \
|
||
libpng-dev \
|
||
libonig-dev \
|
||
libxml2-dev \
|
||
libpq-dev \
|
||
libzip-dev \
|
||
zip \
|
||
unzip \
|
||
libfreetype6-dev \
|
||
libjpeg62-turbo-dev \
|
||
libwebp-dev \
|
||
&& rm -rf /var/lib/apt/lists/*
|
||
|
||
# PHP Extensions kompilieren & installieren
|
||
RUN docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp \
|
||
&& docker-php-ext-install -j$(nproc) gd \
|
||
&& docker-php-ext-install pdo pdo_pgsql xml zip mbstring opcache
|
||
|
||
# Composer installieren
|
||
COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/
|
||
RUN install-php-extensions intl apcu
|
||
|
||
# Node.js & npm für Frontend-Build (optional in Backend)
|
||
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
|
||
&& apt-get install -y nodejs \
|
||
&& npm install -g pnpm
|
||
|
||
WORKDIR /var/www/html
|
||
|
||
# Symfony CLI installieren (optional, nützlich für Local-Tunnel etc.)
|
||
RUN curl -sS https://get.symfony.com/cli/installer | bash \
|
||
&& mv /root/.symfony5/bin/symfony /usr/local/bin/symfony
|
||
|
||
EXPOSE 9000
|
||
|
||
CMD ["php-fpm"]
|