Maison > Article > développement back-end > Déployez facilement des applications PHP : compétences et pratiques avancées du déployeur
Déploiement facile d'applications PHP : compétences et pratiques avancées du déployeur
Introduction :
Dans le développement Web moderne, il est souvent nécessaire de déployer les applications PHP développées sur le serveur, ce qui implique de conditionner et de télécharger le code du serveur local vers le serveur distant, d'effectuer une série de tâches de déploiement, etc. Deployer est un outil de déploiement PHP puissant et facile à utiliser, qui peut nous aider à effectuer facilement ces tâches de déploiement et à améliorer l'efficacité du développement. Cet article présentera les compétences et pratiques avancées de Deployer pour aider les développeurs à mieux utiliser Deployer pour déployer des applications PHP.
1. Installer Deployer
Tout d'abord, nous devons installer Deployer via Composer. Ouvrez le terminal, entrez dans le répertoire racine de votre projet PHP et exécutez la commande suivante pour installer Deployer :
composer require deployer/deployer --dev
Une fois l'installation terminée, le code principal de Deployer sera téléchargé dans le répertoire du fournisseur.
2. Écrivez le script de déploiement
Créez un fichier deploy.php
dans le répertoire racine du projet pour écrire le script de déploiement du déployeur. Voici un exemple de fichier deploy.php
: deploy.php
文件,用于编写Deployer的部署脚本。下面是一个示例的deploy.php
文件:
<?php require 'recipe/common.php'; // 项目名称 set('application', 'MyApp'); // 项目仓库地址 set('repository', 'git@github.com:username/repo.git'); // 部署服务器 server('production', 'example.com', 22) ->user('deploy') ->identityFile('~/.ssh/id_rsa') ->set('deploy_path', '/var/www/html'); // 部署任务 task('deploy', function () { // 克隆最新的代码到指定目录 run('git clone {{repository}} {{release_path}}'); // 安装依赖包 run('cd {{release_path}} && composer install --no-dev'); // 执行其他的部署任务 // 设置软链 run('ln -nfs {{release_path}}/public {{deploy_path}}/current'); }); // 执行部署任务 after('deploy', 'success');
在这个示例中,我们定义了一个名为production
dep deploy productionDans cet exemple, nous définissons un serveur nommé
production
et spécifions l'adresse du serveur et le nom d'utilisateur, le fichier de clé privée et répertoire de déploiement. Dans la tâche de déploiement, nous clonons d'abord le dernier code dans le répertoire spécifié via git, puis exécutons composer install pour installer les packages dépendants, et enfin configurons un lien symbolique pour déployer le code dans le répertoire spécifié.
3. Exécuter le déploiement
server('staging', 'staging.example.com', 22) ->user('deploy') ->identityFile('~/.ssh/id_rsa') ->set('deploy_path', '/var/www/staging'); task('deploy:staging', function () { // 部署到测试环境 });Cette commande conditionnera et téléchargera le code sur le serveur spécifié et effectuera une série d'opérations définies dans la tâche de déploiement. Lors de l'exécution de la tâche de déploiement, Deployer affichera la sortie dans le terminal en temps réel afin que les développeurs puissent visualiser l'état du déploiement en temps réel.
4. Compétences et pratiques avancées
// 安装deployer/recipes插件,用于自动化部署 composer require deployer/recipes require 'recipe/laravel.php'; // 启用Laravel插件 require 'recipe/phinx.php'; // 启用Phinx插件
task('deploy:my_task', function () { // 自定义的部署任务 }); after('deploy', 'deploy:my_task');
rrreee
Résumé :
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!