Introduction

Vous avez développé un projet Laravel et vous souhaitez maintenant le déployer en production ? GitLab CI/CD est une solution puissante pour automatiser ce processus. Dans ce tutoriel, nous allons vous guider pas à pas pour déployer votre projet Laravel avec GitLab. À la fin, vous aurez un projet fonctionnel en ligne, prêt à être utilisé par vos utilisateurs.

Pré-requis et vision d’ensemble

Avant de commencer, assurez-vous d’avoir les éléments suivants :

  • Un projet Laravel fonctionnel
  • Un compte GitLab
  • Un serveur de production (par exemple, un VPS)
  • Accès SSH au serveur
  • Docker installé sur le serveur (optionnel mais recommandé)

Voici une vision d’ensemble des outils et du temps nécessaire :

Outil Version Temps estimé Laravel 7.x ou supérieur 30 minutes GitLab N/A 30 minutes Docker 19.x ou supérieur 30 minutes

Tutoriel pas-à-pas

Étape 1 : Préparer le projet Laravel

Objectif : Configurer le projet Laravel pour le déploiement.

  1. Assurez-vous que votre projet Laravel est versionné avec Git.
  2. Créez un fichier .env.example pour les variables d’environnement.
  3. Ajoutez un fichier .gitlab-ci.yml à la racine de votre projet.

Voici un exemple de fichier .gitlab-ci.yml :

stages: - build - deploy build: stage: build script: - composer install - php artisan config:cache - php artisan route:cache - php artisan view:cache artifacts: paths: - vendor/ - bootstrap/cache/ deploy: stage: deploy script: - rsync -av --delete ./ user@your-server:/var/www/your-project - ssh user@your-server 'cd /var/www/your-project && php artisan migrate --force' only: - master

Pour vérifier que tout fonctionne, exécutez les commandes localement :

composer install php artisan config:cache php artisan route:cache php artisan view:cache

Erreurs fréquentes :

  • Assurez-vous que votre serveur SSH est configuré correctement.
  • Vérifiez que les chemins dans le fichier .gitlab-ci.yml sont corrects.

Étape 2 : Configurer GitLab CI/CD

Objectif : Configurer GitLab pour exécuter les pipelines de déploiement.

  1. Connectez-vous à votre compte GitLab et créez un nouveau projet.
  2. Poussez votre projet Laravel dans le dépôt GitLab.
  3. Accédez à l’onglet CI/CD dans votre projet GitLab et configurez les variables d’environnement nécessaires.

Exemple de variables d’environnement :

  • SSH_PRIVATE_KEY : Votre clé SSH privée
  • SSH_KNOWN_HOSTS : Le contenu de votre fichier known_hosts

Pour vérifier que tout fonctionne, déclenchez manuellement un pipeline et observez les logs.

Erreurs fréquentes :

  • Assurez-vous que les variables d’environnement sont correctement configurées.
  • Vérifiez que les permissions SSH sont correctes.

Étape 3 : Configurer le serveur de production

Objectif : Préparer le serveur pour accueillir le projet Laravel.

  1. Connectez-vous à votre serveur via SSH.
  2. Installez les dépendances nécessaires (PHP, Composer, Nginx/Apache).
  3. Configurez le serveur web pour servir votre projet Laravel.

Exemple de configuration Nginx :

server { listen 80; server_name your-domain.com; root /var/www/your-project/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } }

Pour vérifier que tout fonctionne, accédez à votre domaine dans un navigateur.

Erreurs fréquentes :

  • Assurez-vous que les permissions des fichiers et dossiers sont correctes.
  • Vérifiez que le serveur web est configuré pour utiliser la bonne version de PHP.

Étape 4 : Tester le déploiement

Objectif : Vérifier que le déploiement automatique fonctionne correctement.

  1. Faites des modifications dans votre projet Laravel.
  2. Commitez et poussez les modifications dans le dépôt GitLab.
  3. Observez le pipeline de déploiement dans GitLab.

Pour vérifier que tout fonctionne, accédez à votre site web et vérifiez que les modifications sont en ligne.

Erreurs fréquentes :

  • Assurez-vous que le pipeline GitLab se déclenche automatiquement.
  • Vérifiez les logs de déploiement pour identifier les erreurs éventuelles.

En suivant ce tutoriel, vous avez appris à préparer votre projet Laravel pour le déploiement, à configurer GitLab CI/CD pour automatiser le processus, et à assurer une mise en production fluide et efficace. Ces étapes vous permettent de gagner en productivité et de garantir une qualité constante de votre application.

En maîtrisant le déploiement avec GitLab, vous bénéficiez d’une solution robuste et flexible, capable de s’adapter à vos besoins spécifiques. Vous pouvez ainsi vous concentrer sur le développement de nouvelles fonctionnalités tout en assurant une mise en production sans heurts.

Si vous avez des questions ou besoin d’aide supplémentaire pour déployer votre projet Laravel avec GitLab, n’hésitez pas à nous contacter au 09 77 29 09 69.

Juliette Bernard
Juliette Bernard
Rédactrice technique et spécialiste en documentation
Rédactrice technique avec une passion pour la simplification de l'information complexe. J'écris des articles, guides et documentations qui rendent les concepts techniques accessibles à tous les niveaux. Mon expertise s'étend aux technologies web, à l'infrastructure cloud et aux outils de développement.

Laisser un commentaire