Position actuelle: Accueil> Derniers articles> Guide du processus complet du déploiement automatisé et de la libération de projets PHP à l'aide de déploieur

Guide du processus complet du déploiement automatisé et de la libération de projets PHP à l'aide de déploieur

M66 2025-10-07

Utilisez le déploieur pour réaliser un déploiement automatisé et la libération de projets PHP

Avec le développement continu de la technologie Internet et l'amélioration continue de l'échelle et de la complexité du projet, la façon de déployer manuellement les projets ne peut plus répondre aux besoins d'une itération rapide. Afin d'améliorer l'efficacité et de réduire les erreurs humaines, les outils de déploiement automatisés sont progressivement devenus une partie indispensable du processus de développement. Cet article présentera comment déployer et publier automatiquement des projets PHP via Deployeur.

Introduction au déploieur

Deployeur est un outil de déploiement automatisé open source basé sur PHP, offrant des méthodes de fonctionnement de la ligne de commande simples et puissantes pour aider les développeurs à terminer rapidement le déploiement du projet et la publication des travaux. Il prend en charge une variété de méthodes de déploiement, y compris Git, FTP, SFTP, etc., et peut être étendu via des plug-ins, ce qui le rend très flexible.

Installer le déploieur

Avant de commencer à utiliser, vous devez installer un déploieur dans votre environnement local. La méthode d'installation est très simple, vous pouvez utiliser Composer pour l'installer comme dépendance de projet:

 composer require deployer/deployer --dev

Une fois l'installation terminée, créez un fichier nommé deploy.php dans le répertoire racine du projet pour écrire le script de configuration de déploiement.

Exemple de configuration de base de déploieur

L'exemple suivant montre un fichier de configuration de déploiement de base:

 require 'recipe/common.php';

// Nom du projet
set('application', 'my_project');

// Adresse de l'entrepôt du projet
set('repository', 'git@github.com:username/my_project.git');

// Déployer le serveur cible
server('production', 'production_server_ip')
    ->user('username')
    ->identityFile('~/.ssh/id_rsa')
    ->set('deploy_path', '/var/www/my_project');

// Tâches qui doivent être exécutées après le déploiement
task('deploy:custom_task', function () {
    run('php artisan migrate');
});

// Redémarrer le service une fois le déploiement terminé
after('deploy', 'deploy:restart');

// Configurez les fichiers et répertoires à publier
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);

// Configurer les fichiers et les répertoires pour exclure
set('exclude', ['.git', 'node_modules', 'tests']);

// Définir les variables d'environnement
set('env', [
    'APP_ENV' => 'production',
    'APP_DEBUG' => 'false',
]);

// Configurer le nombre de versions à garder
set('keep_releases', 5);

Dans la configuration ci-dessus, nous définissons les informations de base du projet, l'adresse de l'entrepôt, le serveur cible et les tâches qui doivent être effectuées pendant le processus de déploiement. Grâce à ces configurations, le déploiement peut terminer le processus entier de la traction de code vers le redémarrage du service.

Commandes de déploieurs communs

Lorsque le fichier de configuration est prêt, vous pouvez utiliser les outils de ligne de commande fournis par Deployeur pour déployer. Par exemple:

 # Déployez le projet sur le serveur Target
dep deploy production

# Retour à la version de version précédente
dep rollback production

# Nettoyer les versions expirées
dep cleanup

Ces commandes peuvent nous aider à effectuer rapidement des opérations de déploiement communes, telles que la publication du dernier code dans un environnement de production, effectuer des migrations de base de données, le rétablissement des versions historiques et le nettoyage des anciens fichiers de version.

Résumer

Grâce au déploiement, nous pouvons facilement implémenter le processus automatisé de déploiement et de libération des projets PHP. Il réduit non seulement considérablement le temps de déploiement, mais réduit également les risques causés par les opérations manuelles. Le déploiement est sans aucun doute une solution efficace et stable pour les projets qui nécessitent des mises à jour et des versions fréquentes. Il est recommandé que les développeurs essaient d'utiliser le déploiement dans les projets réels pour améliorer encore le développement et l'efficacité de fonctionnement et de maintenance de l'équipe.