Rumah >pembangunan bahagian belakang >tutorial php >Mesti dibaca untuk pembangun: Gunakan Deployer untuk mengoptimumkan proses penggunaan aplikasi PHP

Mesti dibaca untuk pembangun: Gunakan Deployer untuk mengoptimumkan proses penggunaan aplikasi PHP

PHPz
PHPzasal
2023-07-13 17:54:071002semak imbas

Mesti dibaca untuk pembangun: Gunakan Deployer untuk mengoptimumkan proses penggunaan aplikasi PHP

Pengenalan:
Dalam pembangunan aplikasi moden, proses penggunaan yang cekap adalah sangat penting. Kecekapan proses penempatan bukan sahaja dapat mengurangkan beban kerja pembangun, tetapi juga meningkatkan kebolehpercayaan dan kestabilan aplikasi. Artikel ini akan memperkenalkan alat yang dipanggil Deployer, yang boleh membantu pembangun mengoptimumkan proses penggunaan aplikasi PHP dan menyediakan beberapa contoh kod.

Apakah Deployer?
Deployer ialah alat sumber terbuka yang dibangunkan berdasarkan PHP, yang direka khas untuk memudahkan dan mengoptimumkan proses penggunaan aplikasi. Ia menggunakan protokol SSH dan fungsi kaya untuk menyelesaikan pelbagai tugas secara automatik, seperti penarikan kod, pemasangan kebergantungan, migrasi pangkalan data, penjadualan tugas, dsb.

Pemasangan dan konfigurasi Deployer:
Pertama, kita perlu memasang Deployer dalam projek. Buka terminal, masukkan direktori akar projek, dan laksanakan arahan berikut:

composer require deployer/deployer --dev

Selepas pemasangan selesai, cipta fail deploy.php dalam direktori akar projek dan salin kandungan berikut ke dalam fail: deploy.php文件,并将以下内容复制到文件中:

<?php
require 'vendor/autoload.php';

// 服务器配置
host('服务器IP')
    ->user('用户名')
    ->port(22)
    ->set('deploy_path', '项目部署路径');

// 项目配置
set('repository', 'git@github.com:用户名/项目名.git');
set('branch', 'master');
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);

// 任务配置
task('deploy', function () {
    run('cd {{release_path}} && php artisan migrate --force');
    run('cd {{release_path}} && php artisan queue:restart');
});

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

在上述配置中,我们需要根据实际情况修改服务器配置、项目配置和任务配置。其中,服务器配置中需填写服务器的IP、用户名、端口和项目部署路径;项目配置中需填写项目的Git仓库地址、分支名称以及需要共享的文件和目录;任务配置中定义了部署过程中需要执行的任务。

使用Deployer进行部署:
安装和配置完成后,我们可以使用Deployer来进行部署。在终端中,进入项目根目录,并执行以下命令:

dep deploy

该命令将触发Deployer开始部署流程。Deployer会自动从Git仓库中拉取代码,并按照配置文件中定义的任务依次执行。在部署过程中,可以根据需要执行特定的任务,如数据库迁移和队列重启等。

代码示例一:数据库迁移
在上述配置文件中,我们定义了一个名为deploy的任务,在该任务中执行了php artisan migrate --force命令。这是Laravel框架中的一个命令,用于执行数据库迁移。在部署过程中,我们可以自动执行数据库迁移,以保证数据库结构的正确性。

代码示例二:队列重启
在上述配置文件中,我们还定义了一个名为deploy的任务,在该任务中执行了php artisan queue:restartrrreee

Dalam konfigurasi di atas, kita perlu mengubah suai konfigurasi pelayan, konfigurasi projek dan konfigurasi tugas mengikut situasi sebenar. Antaranya, IP pelayan, nama pengguna, port dan laluan penggunaan projek perlu diisi dalam konfigurasi pelayan, alamat gudang Git projek, nama cawangan, dan fail serta direktori yang perlu dikongsi perlu diisi dalam; konfigurasi projek; konfigurasi tugasan mentakrifkan keperluan semasa tugasan proses penempatan untuk dilaksanakan.


Deployer menggunakan Deployer:

Selepas pemasangan dan konfigurasi selesai, kami boleh menggunakan Deployer untuk menggunakan. Dalam terminal, masukkan direktori akar projek dan laksanakan arahan berikut:

rrreee

Arahan ini akan mencetuskan Deployer untuk memulakan proses penempatan. Deployer akan secara automatik menarik kod daripada repositori Git dan melaksanakannya mengikut urutan mengikut tugasan yang ditakrifkan dalam fail konfigurasi. Semasa proses penempatan, tugas tertentu boleh dilakukan seperti yang diperlukan, seperti pemindahan pangkalan data dan mulakan semula baris gilir.
  • Contoh Kod 1: Migrasi Pangkalan Data
  • Dalam fail konfigurasi di atas, kami menentukan tugas bernama deploy, di mana kami melaksanakan php artisan migrate --forceCommand. Ini ialah arahan dalam rangka kerja Laravel yang digunakan untuk melaksanakan migrasi pangkalan data. Semasa proses penempatan, kami boleh melakukan pemindahan pangkalan data secara automatik untuk memastikan ketepatan struktur pangkalan data.
  • Contoh Kod 2: Mulakan Semula Baris Gilir
Dalam fail konfigurasi di atas, kami juga menentukan tugas bernama deploy, di mana php artisan queue:restarttelah dilaksanakan >Arahan. Ini ialah arahan dalam rangka kerja Laravel yang digunakan untuk memulakan semula perkhidmatan baris gilir. Semasa proses penempatan, kami boleh memulakan semula perkhidmatan baris gilir secara automatik untuk memastikan kod baharu boleh mengendalikan tugas baris gilir dengan betul. 🎜🎜Kesimpulan: 🎜Menggunakan Deployer boleh memudahkan dan mengoptimumkan proses penempatan aplikasi PHP. Melalui fail konfigurasi dan definisi tugas, kami boleh menyelesaikan tugas secara automatik seperti penarikan kod, pemasangan kebergantungan, pemindahan pangkalan data dan mulakan semula baris gilir. Saya harap artikel ini akan membantu pembangun untuk mempelajari dan menggunakan Deployer. 🎜🎜Pautan rujukan: 🎜🎜🎜[Dokumen rasmi pengagih](https://deployer.org/)🎜🎜[repositori GitHub Deployer](https://github.com/deployphp/deployer)🎜🎜

Atas ialah kandungan terperinci Mesti dibaca untuk pembangun: Gunakan Deployer untuk mengoptimumkan proses penggunaan aplikasi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn