現在の位置: ホーム> 最新記事一覧> Deployerを使用したPHPプロジェクトの自動展開とリリースの完全なプロセスのガイド

Deployerを使用したPHPプロジェクトの自動展開とリリースの完全なプロセスのガイド

M66 2025-10-07

デプロイヤーを使用して、PHPプロジェクトの自動展開とリリースを実現する

インターネットテクノロジーの継続的な開発とプロジェクトスケールと複雑さの継続的な改善により、プロジェクトを手動で展開する方法は、迅速な反復のニーズを満たすことができなくなります。効率を改善し、人的エラーを減らすために、自動化された展開ツールは徐々に開発プロセスの不可欠な部分になりました。この記事では、Deployerを通じてPHPプロジェクトを自動的に展開および公開する方法を紹介します。

デプロイヤーの紹介

Deployerは、PHPに基づいたオープンソースの自動展開ツールであり、開発者がプロ​​ジェクトの展開とリリース作業を迅速に完了するのに役立つシンプルで強力なコマンドライン操作方法を提供します。 GIT、FTP、SFTPなどを含むさまざまな展開方法をサポートし、プラグインを介して拡張できるため、非常に柔軟になります。

Deployerをインストールします

使用を開始する前に、ローカル環境にDeployerをインストールする必要があります。インストール方法は非常に簡単です。Composerを使用して、プロジェクトの依存関係としてインストールできます。

 composer require deployer/deployer --dev

インストールが完了したら、プロジェクトルートディレクトリにdeploy.phpという名前のファイルを作成して、展開構成スクリプトを作成します。

デプロイヤーの基本設定の例

次の例は、基本的な展開構成ファイルを示しています。

 require 'recipe/common.php';

// プロジェクト名
set('application', 'my_project');

// プロジェクトウェアハウスアドレス
set('repository', 'git@github.com:username/my_project.git');

// ターゲットサーバーを展開します
server('production', 'production_server_ip')
    ->user('username')
    ->identityFile('~/.ssh/id_rsa')
    ->set('deploy_path', '/var/www/my_project');

// 展開後に実行する必要があるタスク
task('deploy:custom_task', function () {
    run('php artisan migrate');
});

// 展開が完了した後にサービスを再起動します
after('deploy', 'deploy:restart');

// 公開されるファイルとディレクトリを構成します
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);

// 除外するファイルとディレクトリを構成します
set('exclude', ['.git', 'node_modules', 'tests']);

// 環境変数を設定します
set('env', [
    'APP_ENV' => 'production',
    'APP_DEBUG' => 'false',
]);

// 保持するリリースの数を構成します
set('keep_releases', 5);

上記の構成では、プロジェクトの基本情報、倉庫アドレス、ターゲットサーバー、および展開プロセス中に実行する必要があるタスクを定義します。これらの構成を通じて、展開者はコードプルからサービスの再起動までのプロセス全体を自動的に完了できます。

一般的な展開コマンド

構成ファイルの準備ができたら、Deployerが提供するコマンドラインツールを使用して展開できます。例えば:

 # プロジェクトをターゲットサーバーに展開します
dep deploy production

# 前のリリースバージョンにロールバックします
dep rollback production

# 期限切れのリリースをクリーンアップします
dep cleanup

これらのコマンドは、最新のコードを生産環境に公開する、データベース移行の実行、履歴バージョンのロールバック、古いバージョンファイルのクリーニングなど、一般的な展開操作を迅速に完了するのに役立ちます。

要約します

Deployerを通じて、PHPプロジェクトの自動展開およびリリースプロセスを簡単に実装できます。展開時間を大幅に短縮するだけでなく、手動操作によってもたらされるリスクを減らします。 Deployerは、間違いなく、頻繁な更新やリリースを必要とするプロジェクトの効率的で安定したソリューションです。開発者は、実際のプロジェクトでデプロイヤーを使用して、チームの開発と運用とメンテナンスの効率をさらに改善しようとすることをお勧めします。