Dans ce tutoriel, nous allons avoir comment déployer automatiquement une application Laravel avec deployer.
Comment utiliser PostgreSQL avec Laravel
Vous avez déjà une application Laravel et un serveur ou un hébergement partagé. Vous devez maintenant automatiser le processus de déploiement.
Comment déployé une application Rails avec Mina, Puma et Nginx
Deployer vous aidera dans ce sens car il est livré avec des tas de fonctionnalités prêtes à l’emploi pour automatiser le déploiement d’une application basée sur Laravel.
Déployer automatiquement une application Laravel avec deployer
Avant de commencer à déployer automatiquement une application Laravel avec deployer, nous commencerons par l’installation de Deployer.
Exécutez les commandes suivantes dans le terminal:
curl -LO https://deployer.org/deployer.phar mv deployer.phar /usr/local/bin/dep chmod +x /usr/local/bin/dep
Ensuite, dans votre répertoire de projets, exécutez:
dep init -t Laravel
La commande créera le fichier deploy.php pour le déploiement de Laravel.
Ce fichier contient une configuration d’hôte et un exemple de tâche.
Tout d’abord, nous devons configurer la configuration du référentiel de notre application:
set('repository', 'git@github.com:user/project.git');
Deuxièmement, configurez l’hôte:
host('domain.org') ->set('deploy_path', '/var/www/html');
Assurez-vous que ~/.ssh/config contient domain.org et vous pouvez vous connecter à l’hôte en ssh.
Un autre paramètre important est deploy_path, où votre projet sera situé sur l’hôte distant.
Faisons notre premier déploiement:
dep deploy
Si tout se passe bien, le déploiement créera la structure suivante sur l’hôte distant dans deploy_path:
├── .dep ├── current -> releases/1 ├── releases │ └── 1 └── shared ├── .env └── storage
releases
contient les versions de déploiement de l’application Laravel,shared
contient la configuration et le stockage .env qui seront liés symboliquement à chaque version,current
est un lien symbolique vers la dernière version,dep
contient des métadonnées spéciales pour le déployeur (journal des versions, fichier deploy.log, etc.).
Configurez votre serveur pour servir les fichiers à partir des fichiers actuels.
Par exemple, si vous utilisez nginx ensuite:
server { listen 80; server_name domain.org; root /var/www/html/current/public; location / { try_files $uri /index.php$is_args$args; } }
Vous pourrez désormais servir votre projet laravel:
Si vous souhaitez migrer automatiquement la base de données, Laravel est livrée avec la tâche artisan:migrate.
Ajoutez ces lignes à votre deploy.php:
after('deploy:update_code', 'artisan:migrate');
Plus d’informations sur la configuration et les déclarations de tâches dans la documentation.
Conclusion
Dans ce tutoriel, nous avons appris comment déployer automatiquement une application Laravel avec Deployer.
Si vous avez des remarques et suggestions, veuillez laisser un commentaire sous cet article.
Bonne lecture !
1 Comment