Déployer les mises à jour de votre projet Laravel sur le serveur peut sembler complexe, mais nous pouvons le diviser en quatre étapes simples : gérer les modifications de code, gérer les dépendances, traiter les mises à jour de la base de données et nettoyer l'environnement. Explorons chacune de ces étapes de manière simple.
Phase 0 : Préparation au déploiement - Assurer la stabilité du système
Avant de déployer des changements, il est essentiel de prendre en compte les perturbations potentielles pendant le processus. Deux options s'offrent à vous :
-
Rendre le système inaccessible pendant le déploiement :
- Utilisez la commande
php artisan down
au début du processus. - Cela rendra votre application inaccessible avec un message "SERVICE UNAVAILABLE" et un code HTTP 503.
- Les utilisateurs ne pourront y accéder qu'une fois que vous l'aurez ramenée en ligne avec
php artisan up
.
- Utilisez la commande
-
Outils de déploiement sans interruption :
- Explorez des outils de déploiement sans interruption, discutés plus en détail ultérieurement.
Phase 1 : Mise à jour du code
- Mettez à jour votre code avec la commande
git pull
depuis la branche sur laquelle vous travaillez.- Par exemple, pour le serveur de production :
git pull origin main
. - Pour un serveur de test :
git pull origin develop
.
- Par exemple, pour le serveur de production :
Phase 2 : Gestion des dépendances
-
Modifications locales :
- Utilisez Composer sur votre environnement de développement local pour installer de nouveaux packages ou mettre à jour les existants avec
composer require
oucomposer update
. - Cela met à jour le fichier
composer.lock
qui enregistre les versions exactes des packages.
- Utilisez Composer sur votre environnement de développement local pour installer de nouveaux packages ou mettre à jour les existants avec
-
Pousser les changements :
- Poussez le fichier
composer.lock
mis à jour sur votre référentiel Git.
- Poussez le fichier
-
Déploiement :
- Lorsque vous êtes prêt à déployer, exécutez
composer install
sur le serveur.
- Lorsque vous êtes prêt à déployer, exécutez
Phase 3 : Gestion des changements de base de données
-
Appliquer les changements à la base de données avec
php artisan migrate
.- Pour une exécution automatique, utilisez
php artisan migrate --force
.
- Pour une exécution automatique, utilisez
-
Ajouter des données initiales :
- Automatisez cela directement dans le fichier de migration ou utilisez
php artisan db:seed
pour l'exécution manuelle.
- Automatisez cela directement dans le fichier de migration ou utilisez
Phase 4 : Gestion des changements d'environnement
Effacer les caches avec
php artisan cache:clear
,php artisan route:clear
, etphp artisan view:clear
.Pour une version spécifique de PHP, rechargez le service PHP-FPM avec
echo "" | sudo -S service php8.1-fpm reload
.Redémarrez les files d'attente si votre application utilise des tâches en arrière-plan.
Phase finale : Rétablir l'application
Si vous avez utilisé php artisan down
au début, n'oubliez pas de la rendre à nouveau accessible avec php artisan up
.
Script complet pour le déploiement :
cd /home/some-subfolders/your-app-folder
php artisan down
git pull origin main
composer install --no-interaction --no-dev
php artisan migrate --force
php artisan cache:clear
php artisan route:clear
php artisan view:clear
echo "" | sudo -S service php8.1-fpm reload
php artisan up
N'oubliez pas que ces étapes peuvent varier en fonction de votre application, de votre configuration Git, de votre environnement serveur, etc. Utilisez ces étapes comme base, en les ajustant selon vos besoins spécifiques.
Top comments (0)