introduction
Pendant le développement et le lancement de projets PHP, le processus de déploiement prend généralement du temps et sujet aux erreurs. Afin d'améliorer l'efficacité et la stabilité, cet article présentera comment utiliser l'outil de déploiement pour réaliser un déploiement automatique et un retour rapide des projets PHP pour garantir que chaque version est stable et fiable.
Qu'est-ce qu'un déploieur?
Deployeur est un outil de déploiement PHP open source qui utilise une syntaxe concise DSL (langage spécifique au domaine) pour définir facilement le processus de déploiement. Il prend en charge une variété de méthodes de déploiement, y compris le GIT, et peut effectuer automatiquement des tâches telles que la construction, le réglage d'autorisation, le rechargement des services, etc. Le déploieur a une bonne évolutivité et personnalisation, ce qui convient très bien aux scénarios de livraison continus des équipes de développement PHP.
Installer le déploieur
Pour utiliser le déploieur, installez-le d'abord via Composer:
composer require deployer/deployer --dev
Une fois l'installation terminée, un fichier de configuration Deploy.php sera généré dans le répertoire racine du projet pour définir les règles et tâches de déploiement.
Configurer les scripts de déploiement
Ce qui suit est un exemple de configuration de base `deploy.php`, y compris les connexions du serveur, le référentiel de code, les paramètres de répertoire partagé et les tâches personnalisées:
<?php
require 'vendor/autoload.php';
require 'recipe/common.php';
// Configuration du serveur
server('production', 'your_server_address')
->user('your_username')
->password('your_password')
->set('deploy_path', '/var/www/html/your_project_path');
// Configuration du projet
set('repository', 'your_git_repository');
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);
set('writable_dirs', ['bootstrap/cache']);
set('keep_releases', 5);
// Construire des tâches
task('build', function () {
run('cd {{release_path}} && build-script');
});
// Déverrouiller automatiquement si le déploiement a échoué
after('deploy:failed', 'deploy:unlock');
// Tâches personnalisées:Recharger PHP-FPM
task('reload:php-fpm', function () {
run('sudo systemctl reload php-fpm');
});
// Processus de déploiement automatisé
before('deploy', 'build');
after('deploy', 'reload:php-fpm');
Veuillez remplacer l'adresse du serveur, le nom d'utilisateur, l'adresse de l'entrepôt et d'autres champs dans la configuration ci-dessus en fonction de la situation réelle.
Exécuter les commandes de déploiement
Après avoir terminé la configuration, exécutez-la à partir de la ligne de commande dans le répertoire racine du projet:
dep deploy
Cette commande tirera automatiquement le code dans le référentiel GIT, le déploiera dans le répertoire spécifié du serveur et effectuera des tâches prédéfinies. L'ensemble du processus peut être hautement automatisé, simplifiant considérablement le processus de déploiement.
Opération en arrière du projet
Lorsque des problèmes se produisent dans un projet déployé, vous pouvez rapidement exécuter la commande suivante pour revenir à la version stable précédente:
dep rollback
L'opération de retour rétablira la version précédente et réexécutera les tâches d'automatisation correspondantes pour s'assurer que le service de projet reviendra à la normale.
Résumer
Avec l'aide du déploiement, le processus de déploiement et de retour des projets PHP peut être standardisé et automatisé, réduisant considérablement les erreurs opérationnelles humaines et améliorant l'efficacité de la libération. Grâce à la configuration flexible et aux mécanismes de tâches personnalisés, le déploiement est devenu un outil de déploiement indispensable dans le développement, le fonctionnement et la maintenance PHP.