현재 위치: > 최신 기사 목록> 배치자를 사용하여 자동 배포 및 PHP 프로젝트 릴리스의 전체 프로세스에 대한 가이드

배치자를 사용하여 자동 배포 및 PHP 프로젝트 릴리스의 전체 프로세스에 대한 가이드

M66 2025-10-07

배치자를 사용하여 PHP 프로젝트의 자동 배포 및 출시를 달성합니다.

인터넷 기술의 지속적인 개발과 프로젝트 규모 및 복잡성의 지속적인 개선으로 프로젝트를 수동으로 배포하는 방법은 더 이상 빠른 반복의 요구를 충족시킬 수 없습니다. 효율성을 향상시키고 인적 오류를 줄이기 위해 자동 배포 도구는 점차 개발 프로세스에 없어서는 안될 부분이되었습니다. 이 기사는 배치자를 통해 PHP 프로젝트를 자동으로 배포하고 게시하는 방법을 소개합니다.

배치자 소개

Deployer는 PHP를 기반으로 한 오픈 소스 자동화 배포 도구로서 개발자가 프로젝트 배포 및 릴리스 작업을 신속하게 완료 할 수 있도록 간단하고 강력한 명령 줄 작동 방법을 제공합니다. GIT, FTP, SFTP 등을 포함한 다양한 배포 방법을 지원하며 플러그인을 통해 확장 할 수 있으므로 매우 유연합니다.

배치자를 설치하십시오

사용을 시작하기 전에 지역 환경에 배치자를 설치해야합니다. 설치 방법은 매우 간단합니다. 작곡가를 사용하여 프로젝트 종속성으로 설치할 수 있습니다.

 composer require deployer/deployer --dev

설치가 완료된 후 Project Root 디렉토리에서 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);

위 구성에서는 프로젝트의 기본 정보, 창고 주소, 대상 서버 및 배포 프로세스 중에 수행 해야하는 작업을 정의합니다. 이러한 구성을 통해 배포자는 코드 풀에서 서비스 재시작까지 전체 프로세스를 자동으로 완료 할 수 있습니다.

공통 배치자 명령

구성 파일이 준비되면 배포자가 제공 한 명령 줄 도구를 사용하여 배포 할 수 있습니다. 예를 들어:

 # 프로젝트를 대상 서버에 배포하십시오
dep deploy production

# 이전 릴리스 버전으로 롤백하십시오
dep rollback production

# 만료 된 릴리스를 정리하십시오
dep cleanup

이 명령은 최신 코드를 제작 환경에 게시하고 데이터베이스 마이그레이션 수행, 과거 버전 롤백 및 이전 버전 파일 청소와 같은 일반적인 배포 작업을 신속하게 완료하는 데 도움이 될 수 있습니다.

요약

배치자를 통해 PHP 프로젝트의 자동 배포 및 릴리스 프로세스를 쉽게 구현할 수 있습니다. 배포 시간을 크게 줄일뿐만 아니라 수동 작업으로 인한 위험을 줄입니다. 배포자는 의심 할 여지없이 자주 업데이트 및 릴리스가 필요한 프로젝트를위한 효율적이고 안정적인 솔루션입니다. 개발자는 실제 프로젝트에서 배치자를 사용하여 팀의 개발 및 운영 및 유지 보수 효율성을 더욱 향상시키는 것이 좋습니다.