Aller au contenu
Administration serveur

Deployer

Deployer

Dans ce chapitre, nous allons aborder un aspect crucial du développement d'applications web : le déploiement. Le déploiement est l'étape où nous prenons notre application développée localement et la mettons en ligne pour que tout le monde puisse y accéder.

Nous allons créer un nouveau projet Laravel, un framework PHP populaire, et y intégrer l'authentification grâce au package Laravel Breeze. Ensuite, nous sauvegarderons notre projet sur GitHub, un service d'hébergement pour les projets versionnés avec Git.

Ensuite, nous allons installer et configurer Deployer, un outil de déploiement pour PHP. Nous verrons comment créer une configuration de déploiement et comment déployer notre application avec un utilisateur spécifique.

Enfin, nous allons mettre en place un système de CI/CD avec GitHub Actions. Les systèmes de CI/CD sont essentiels pour la livraison continue de logiciels de qualité. Ils nous permettent d'automatiser des tâches telles que les tests et le déploiement, ce qui accélère le processus de développement et assure que notre application est toujours dans un état déployable.

Création d'un nouveau projet Laravel

Installation de Laravel

Avant de commencer, assurez-vous d'avoir installé Composer, l'outil de gestion des dépendances de PHP, sur votre machine.

Création d'un nouveau projet Laravel

Pour créer un nouveau projet Laravel, utilisez la commande suivante :

composer create-project laravel/laravel nom_du_projet

Remplacez "nom_du_projet" par le nom que vous souhaitez donner à votre projet. Cette commande crée un nouveau répertoire avec le nom du projet et installe une nouvelle instance de Laravel dans ce répertoire.

Installation du package Laravel Breeze

Introduction à Laravel Breeze

Laravel Breeze est un kit de démarrage minimal pour la construction d'une application Laravel avec authentification. Il fournit une bonne base pour commencer à construire votre application.

Installation de Laravel Breeze

Pour installer Laravel Breeze, utilisez la commande suivante dans le répertoire de votre projet :

composer require laravel/breeze --dev

Ensuite, installez Breeze en utilisant la commande :

php artisan breeze:install

Cette commande installe les vues d'authentification et le contrôleur d'authentification de Breeze.

Créez une base de données et renseignez les informations de connexion dans le fichier .env.

Exécutez la commande suivante pour créer les tables :

php artisan migrate

Sauvegarde du projet sur GitHub

Initialisation d'un dépôt Git

Pour initialiser un dépôt Git dans votre projet, utilisez la commande suivante :

git init

Cette commande crée un nouveau dépôt Git dans votre répertoire de projet.

Ajout du projet au dépôt Git

Pour ajouter votre projet au dépôt Git, utilisez les commandes suivantes :

git add .
git commit -m "Initial commit"

Ces commandes ajoutent tous les fichiers de votre projet au dépôt Git et créent un premier commit avec le message "Initial commit".

Création d'un dépôt GitHub

Allez sur GitHub et créez un nouveau dépôt. Ne cochez pas l'option "Initialize this repository with a README", car vous avez déjà un projet existant que vous souhaitez pousser sur GitHub.

Push du projet sur GitHub

Pour pousser votre projet sur GitHub, utilisez les commandes suivantes :

git remote add origin url_de_votre_dépôt_github
git push -u origin master

Remplacez "url_de_votre_dépôt_github" par l'URL de votre dépôt GitHub. Ces commandes poussent votre projet sur GitHub.

Installation et configuration du package Deployer

Présentation de Deployer

Deployer est un outil de déploiement qui permet d'automatiser le déploiement de vos applications PHP sur des serveurs distants.

Installation de Deployer

Pour installer Deployer, utilisez la commande suivante dans votre terminal :

composer require deployer/deployer --dev

Création de la configuration de déploiement

Après avoir installé Deployer, créez un fichier "deploy.php" à la racine de votre projet. Ce fichier contiendra les tâches de déploiement spécifiques à votre application.

Déploiement automatique avec l'utilisateur Deployer

Configuration de l'utilisateur Deployer

Dans le fichier "deploy.php", configurez l'utilisateur Deployer en définissant le serveur de déploiement et le chemin de déploiement.

Déploiement du projet avec Deployer

Pour déployer votre projet avec Deployer, utilisez la commande suivante :

dep deploy production

Mise en place d'un système de CI/CD avec GitHub Actions

Introduction à GitHub Actions

GitHub Actions est un outil de CI/CD qui permet d'automatiser votre workflow de développement. Avec GitHub Actions, vous pouvez créer des workflows personnalisés pour construire, tester, empaqueter, publier et déployer votre code.

Création d'un workflow de CI/CD

Pour créer un workflow de CI/CD, créez un nouveau fichier dans le répertoire ".github/workflows" de votre projet. Ce fichier définira les étapes de votre workflow de CI/CD.

Configuration du workflow pour le déploiement automatique

Dans le fichier de workflow, configurez les étapes de build, de test et de déploiement pour déployer automatiquement votre application à chaque push sur la branche master.