PHP 애플리케이션의 탄력적 배포를 위해 Deployer 사용
소개:
오늘날 클라우드 네이티브 시대에 탄력적 배포는 매우 중요한 기술입니다. 이를 통해 수요에 따라 리소스를 동적으로 조정하여 애플리케이션 안정성과 신뢰성을 보장할 수 있습니다. PHP 애플리케이션의 유연한 배포를 위한 Deployer는 강력하고 유연한 도구입니다. 이 기사에서는 Deployer를 사용하여 PHP 애플리케이션을 탄력적으로 배포하는 방법을 소개합니다.
1. Deployer 소개
Deployer는 PHP 애플리케이션을 자동으로 배포하는 데 사용되는 순수 PHP로 작성된 명령줄 도구입니다. 다양한 환경에 애플리케이션을 쉽게 배포하는 데 도움이 되며 기능을 확장할 수 있는 풍부한 플러그인을 제공합니다.
2. Deployer 설치
Deployer를 사용하기 전에 먼저 개발 환경에 설치해야 합니다. Composer를 사용하여 Deployer를 설치할 수 있습니다. 터미널을 열고 다음 명령을 실행합니다:
composer global require deployer/deployer
3. Deployer 구성
설치가 완료된 후 대상 서버에 연결하고 배포 작업을 수행하도록 Deployer를 구성해야 합니다. 프로젝트 루트 디렉터리에 deploy.php
파일을 생성하고 다음 코드를 파일에 복사합니다: deploy.php
文件,并将以下代码复制到文件中:
require 'recipe/common.php'; // 服务器连接配置 server('production', 'your_server_ip') ->user('your_username') ->port(22) ->identityFile('~/.ssh/id_rsa') ->stage('production') ->env('deploy_path', '/var/www/html'); // 项目仓库配置 set('repository', 'your_repository'); // 代码分支配置 set('branch', 'master'); // 需要部署的文件/目录 set('shared_files', ['.env']); set('shared_dirs', ['storage']); // 执行部署任务 task('deploy', [ 'deploy:prepare', 'deploy:lock', 'deploy:release', 'deploy:update_code', 'deploy:shared', 'deploy:writable', 'deploy:symlink', 'deploy:unlock', 'cleanup', ])->desc('Deploy the PHP application'); // 部署失败时回滚任务 task('deploy:failed', function () { run('cd {{release_path}} && ./artisan migrate:rollback --force'); }); // 部署后执行清理任务 after('deploy', 'deploy:cleanup');
请根据您的服务器配置做出相应的修改,以及设置您的代码仓库和分支。
四、编写部署任务
Deployer允许我们编写自定义任务,并在部署过程中执行。在deploy.php
task('php-fpm:restart', function () { run('sudo service php7.4-fpm restart'); })->desc('Restart PHP-FPM'); after('deploy', 'php-fpm:restart');
Deployer를 사용하면 배포 프로세스 중에 사용자 정의 작업을 작성하고 실행할 수 있습니다. deploy.php
파일 끝에 자신만의 작업을 추가할 수 있습니다. 예를 들어 배포 후 PHP-FPM을 다시 시작하는 간단한 작업은 다음과 같습니다.
dep deploy production
구성 및 작업 작성을 완료한 후 배포 명령을 실행하여 PHP 애플리케이션을 배포할 수 있습니다. 터미널에서 프로젝트 루트 디렉터리로 이동하여 다음 명령을 실행합니다.
rrreee
위 내용은 PHP 애플리케이션의 유연한 배포를 위해 Deployer 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!