Maison  >  Article  >  développement back-end  >  Partir de zéro : un guide complet pour configurer et déployer des projets PHP avec Deployer

Partir de zéro : un guide complet pour configurer et déployer des projets PHP avec Deployer

WBOY
WBOYoriginal
2023-07-13 09:33:151319parcourir

Partir de zéro : un guide complet pour configurer et déployer des projets PHP à l'aide de Deployer

Introduction :
Dans un environnement de développement moderne, la configuration et le déploiement d'un projet PHP sont une étape très importante. Deployer est un puissant outil de déploiement automatisé qui peut nous aider à créer, configurer et déployer facilement des projets PHP. Cet article vous présentera comment utiliser Deployer pour effectuer ces tâches, avec des exemples de code.

Première partie : Installer Deployer

Tout d'abord, nous devons installer Deployer. Ouvrez la ligne de commande et entrez la commande suivante :

$ composer require deployer/deployer --dev

Cela installera Deployer dans votre projet. Ensuite, nous allons créer un fichier deploy.php dans le répertoire racine du projet, qui est le fichier de configuration de Deployer. deploy.php文件,这是Deployer的配置文件。

第二部分:配置Deployer

deploy.php文件中,我们需要配置一些基本的设置,以便Deployer能够正确地部署我们的项目。以下是一个示例配置:

<?php
namespace Deployer;

require_once 'vendor/autoload.php';

// 服务器连接
host('your-server-ip')
    ->user('your-username')
    ->port(22)
    ->identityFile('~/.ssh/id_rsa')
    ->set('deploy_path', '/var/www/html');

// 项目设置
set('repository', 'git@github.com:your-username/your-project.git');
set('branch', 'master');
set('keep_releases', 3);

// 任务定义
task('deploy', function () {
    // 上传代码
    upload('path/to/your/local/project', '{{release_path}}');

    // 更新项目依赖
    run('cd {{release_path}} && composer install');

    // 迁移数据库
    run('cd {{release_path}} && php artisan migrate');

    // 切换到最新的发布版本
    run('ln -sfn {{release_path}} {{deploy_path}}/current');

    // 清理旧版本
    cleanup();
});

// 执行部署任务
after('deploy:failed', 'deploy:unlock');

在这个示例配置中,我们首先通过host()方法指定了要连接的服务器的IP地址、用户名、端口和密钥文件。然后,我们指定了要部署的代码仓库和分支。keep_releases选项指定了保留的发布版本数量。在任务定义中,我们定义了一个名为deploy的任务,该任务包含了上传代码、更新项目依赖、迁移数据库、切换到最新的发布版本以及清理旧版本的步骤。最后,我们通过after()

Partie 2 : Configurer Deployer

Dans le fichier deploy.php, nous devons configurer certains paramètres de base pour que Deployer puisse déployer correctement notre projet. Voici un exemple de configuration :

$ dep deploy

Dans cet exemple de configuration, nous spécifions d'abord l'adresse IP, le nom d'utilisateur, le port et le fichier de clé du serveur auquel se connecter via la méthode host(). Ensuite, nous spécifions le référentiel et la branche sur lesquels déployer. L'option keep_releases spécifie le nombre de versions à conserver. Dans la définition de la tâche, nous définissons une tâche nommée deploy, qui comprend les étapes de téléchargement du code, de mise à jour des dépendances du projet, de migration de la base de données, de passage à la dernière version et de nettoyage des anciennes versions. Enfin, nous précisons de déverrouiller le serveur si le déploiement échoue via la méthode after().

Partie 3 : Effectuer le déploiement


Maintenant, nous avons terminé la configuration de Deployer. Ensuite, exécutez simplement la commande suivante dans la ligne de commande pour effectuer le déploiement :

rrreee🎜 Cela déclenchera le déployeur pour démarrer le processus de déploiement. Le déployeur exécutera les tâches que nous avons définies dans le fichier de configuration dans l'ordre. 🎜🎜Conclusion : 🎜Configurer et déployer des projets PHP est un maillon de développement important et une étape clé pour assurer le bon lancement du projet. L'utilisation de Deployer peut simplifier ce processus, nous permettant d'effectuer les tâches de configuration et de déploiement plus facilement. Cet article vous fournit un guide complet sur la configuration et le déploiement de projets PHP à l'aide de Deployer, et fournit des exemples de code pertinents. J'espère que cet article vous sera utile et je vous souhaite du succès dans la configuration et le déploiement de votre projet ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn