mcServerWebsite/docker/apache/Dockerfile
2026-04-09 15:23:15 +02:00

47 lines
1.9 KiB
Docker

# ============================================================
# Image Apache + PHP pour Symfony
# Le code source est copié dans l'image au moment du build
# ============================================================
FROM php:8.3-apache
# ── Dépendances système ──────────────────────────────────────
RUN apt-get update && apt-get install -y \
libicu-dev \
libzip-dev \
libpq-dev \
unzip \
git \
&& docker-php-ext-install \
intl \
pdo \
pdo_pgsql \
zip \
opcache \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# ── Modules Apache ───────────────────────────────────────────
RUN a2enmod rewrite headers
# ── Composer ────────────────────────────────────────────────
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
# ── Code source Symfony ──────────────────────────────────────
WORKDIR /var/www/html
# On copie d'abord composer.json pour profiter du cache Docker
COPY app/composer.json app/composer.lock ./
RUN composer install --no-dev --optimize-autoloader --no-scripts --no-interaction
# Puis le reste du code
COPY app/ .
# ── Droits ──────────────────────────────────────────────────
RUN chown -R www-data:www-data /var/www/html \
&& chmod -R 755 /var/www/html/var
# ── Config Apache ────────────────────────────────────────────
COPY docker/apache/symfony.conf /etc/apache2/sites-enabled/000-default.conf
EXPOSE 80