34 lines
934 B
Docker
34 lines
934 B
Docker
# -----------------------------
|
||
# Étape 1 : build (composer)
|
||
# -----------------------------
|
||
FROM laravelsail/php84-composer AS build
|
||
|
||
WORKDIR /var/www/html
|
||
|
||
# On copie tout le projet (y compris artisan)
|
||
COPY . .
|
||
|
||
# Installation des dépendances PHP en mode production
|
||
RUN composer install --no-dev --no-interaction --prefer-dist --optimize-autoloader
|
||
|
||
# -----------------------------
|
||
# Étape 2 : image runtime
|
||
# -----------------------------
|
||
FROM laravelsail/php84-composer
|
||
|
||
WORKDIR /var/www/html
|
||
|
||
# 👉 Installation du driver MySQL pour PDO
|
||
RUN docker-php-ext-install pdo_mysql
|
||
# On récupère tout ce qui a été préparé dans l’étape build
|
||
COPY --from=build /var/www/html /var/www/html
|
||
|
||
# On désactive l'ENTRYPOINT par défaut de l'image de base
|
||
ENTRYPOINT []
|
||
|
||
# On expose le port HTTP du serveur Laravel
|
||
EXPOSE 80
|
||
|
||
# Commande de démarrage : serveur Laravel
|
||
CMD ["php", "artisan", "serve", "--host=0.0.0.0", "--port=80"]
|