Penggunaan PHP yang elegan: Gunakan Deployer untuk meningkatkan kecekapan pembangunan

王林
Lepaskan: 2023-07-12 13:56:02
asal
801 orang telah melayarinya

Penyerahan PHP yang elegan: Gunakan Deployer untuk meningkatkan kecekapan pembangunan

Dalam pembangunan web, penempatan ialah pautan yang sangat penting. Kaedah penggunaan tradisional biasanya melibatkan operasi yang membosankan seperti menyalin fail secara manual dan melaksanakan arahan, yang bukan sahaja terdedah kepada ralat tetapi juga tidak cekap. Kini, dengan bantuan alatan penggunaan automatik, kami boleh menyelesaikan kerja penempatan dan meningkatkan kecekapan pembangunan dengan mudah.

Artikel ini akan memperkenalkan alat pengerahan PHP yang elegan - Penyebar dan menunjukkan cara menggunakan alat ini untuk penggunaan automatik melalui contoh kod.

1. Pengenalan kepada Deployer

Deployer ialah alat penggunaan automatik sumber terbuka yang dibangunkan berdasarkan PHP Matlamat reka bentuknya mudah digunakan dan sangat berskala. Menggunakan Deployer, kami boleh menggunakan projek dengan menulis fail konfigurasi ringkas tanpa melaksanakan arahan penggunaan yang menyusahkan secara manual.

2. Pasang Deployer

Untuk menggunakan Deployer, anda perlu memasang PHP dan Komposer secara tempatan. Selepas pemasangan selesai, kita boleh memasang Deployer melalui Composer.

Buka alat baris arahan dan masukkan arahan berikut untuk memasang Deployer secara global:

composer global require deployer/deployer
Salin selepas log masuk

Selepas pemasangan selesai, kita boleh menggunakan Deployer melalui perintah dep. dep命令来使用Deployer了。

三、使用Deployer进行部署

下面,我们将通过一个示例项目来演示如何使用Deployer进行自动化部署。

首先,我们需要在项目根目录下创建一个deploy.php配置文件,此文件将包含我们的部署脚本。

<?php
require 'recipe/common.php';

// 项目名称
set('application', 'myproject');

// 项目远程仓库
set('repository', 'git@github.com:user/repo.git');

// 部署到的服务器
server('production', 'mydomain.com', 22)
    ->user('username')
    ->password('password')
    ->set('deploy_path', '/var/www/html/{{application}}');

// 执行部署
task('deploy', function () {
    // 增量更新代码
    run('cd {{release_path}} && git reset --hard HEAD && git pull origin master');

    // 安装依赖
    run('cd {{release_path}} && composer install');

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

    // 配置文件处理
    run('cd {{release_path}} && cp .env.production .env && php artisan config:cache');

    // 重启服务
    run('sudo service nginx restart');
});

// 将以上步骤绑定到部署命令
after('deploy', 'cleanup');
Salin selepas log masuk

在以上配置文件中,我们首先使用require函数引入了Deployer的基础配置文件。

然后,我们通过set函数来设置一些项目相关的配置,例如项目名称、远程仓库地址等。

之后,我们使用server函数来创建一个部署服务器,并设置服务器相关的配置,如服务器地址、用户名、密码等。

最后,我们使用task函数来定义一个部署任务,并在任务中编写部署脚本。在这个示例中,我们首先执行了增量更新代码的操作,然后安装项目依赖、更新数据库、处理配置文件等。

最后,我们使用after函数将以上操作绑定到部署命令中,这样当我们执行dep deploy

3. Gunakan Deployer untuk penempatan

Di bawah, kami akan menggunakan contoh projek untuk menunjukkan cara menggunakan Deployer untuk penempatan automatik.

Pertama, kita perlu mencipta fail konfigurasi deploy.php dalam direktori akar projek Fail ini akan mengandungi skrip penggunaan kami.

dep deploy
Salin selepas log masuk
Dalam fail konfigurasi di atas, kami mula-mula memperkenalkan fail konfigurasi asas Deployer menggunakan fungsi require.

Kemudian, kami menggunakan fungsi set untuk menetapkan beberapa konfigurasi berkaitan projek, seperti nama projek, alamat gudang jauh, dsb.

Selepas itu, kami menggunakan fungsi server untuk mencipta pelayan penempatan dan menetapkan konfigurasi berkaitan pelayan, seperti alamat pelayan, nama pengguna, kata laluan, dsb.

Akhir sekali, kami menggunakan fungsi task untuk mentakrifkan tugas penempatan dan menulis skrip penggunaan dalam tugasan. Dalam contoh ini, kami mula-mula melakukan kemas kini tambahan kod, kemudian memasang kebergantungan projek, mengemas kini pangkalan data, fail konfigurasi yang diproses, dsb.

Akhir sekali, kami menggunakan fungsi after untuk mengikat operasi di atas kepada arahan deployment, supaya apabila kami melaksanakan perintah dep deploy, langkah di atas akan dilaksanakan dalam urutan.

4. Laksanakan penggunaan🎜🎜Selepas konfigurasi selesai, kita boleh beralih ke direktori akar projek dalam alat baris arahan, dan kemudian laksanakan arahan berikut untuk digunakan: 🎜rrreee🎜Semasa proses penempatan, Deployer akan menyambung secara automatik ke alat kawalan jauh yang kami konfigurasikan pelayan dan melaksanakan tugas penempatan yang kami tetapkan. 🎜🎜Apabila penyebaran selesai, kita dapat melihat projek yang berjaya digunakan pada pelayan jauh. 🎜🎜Ringkasan🎜🎜Melalui contoh di atas, kita dapat melihat bahawa menggunakan Deployer untuk penempatan automatik adalah sangat mudah, dan anda hanya perlu menulis fail konfigurasi yang ringkas. Ini sangat meningkatkan kecekapan pembangunan dan mengurangkan risiko ralat yang disebabkan oleh operasi penggunaan manual. 🎜🎜Sudah tentu, Deployer juga menyediakan lebih banyak fungsi dan kebolehskalaan, seperti menyokong penggunaan serentak berbilang pelayan, fungsi cangkuk sebelum dan selepas penggunaan, dsb. Jika anda mempunyai keperluan penggunaan yang lebih kompleks, anda boleh menyemak dokumentasi Deployer rasmi untuk mendapatkan maklumat lanjut. 🎜🎜Saya harap artikel ini dapat membantu anda dan menjadikan anda lebih elegan dan cekap dalam penggunaan projek PHP! 🎜

Atas ialah kandungan terperinci Penggunaan PHP yang elegan: Gunakan Deployer untuk meningkatkan kecekapan pembangunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan