로컬 개발을 위해 Laravel Homestead를 설치하는 방법은 무엇입니까?

게시 됨: 2023-05-10

Laravel Homestead Vagrant 상자는 Laravel 기반 웹 앱을 구축하기 위한 사전 구성된 환경을 제공합니다. Homestead를 사용하면 Laravel 애플리케이션이 프로덕션에서 작동할 환경과 일치하는 로컬 개발 환경을 쉽게 만들 수 있습니다. 이 튜토리얼에서는 개발에 사용하기 위해 로컬 컴퓨터에 Laravel Homestead를 설치하는 방법을 보여줍니다.

목차 보기
  • 1단계: 필수 소프트웨어 설치
  • 2단계: 홈스테드 설치
  • 3단계: 홈스테드 구성
  • 4단계: 홈스테드 시작
  • 5단계: Laravel 애플리케이션에 액세스
  • 6단계: Laravel 애플리케이션 개발
  • 결론

1단계: 필수 소프트웨어 설치

VirtualBox 및 Vagrant-Local 개발

Laravel Homestead 설정을 시작하기 전에 일부 소프트웨어를 설정해야 합니다. 첫 번째 단계는 단일 호스트 컴퓨터에서 많은 가상 컴퓨터를 실행할 수 있는 무료 오픈 소스 가상화 프로그램인 VirtualBox를 설정하는 것입니다. VirtualBox는 Homestead VM에 전원을 공급하는 데 사용됩니다. VirtualBox는 이 URL에서 다운로드할 수 있습니다.

다음 단계는 가상 머신 환경을 만들고 유지하기 위한 명령줄 도구인 Vagrant를 설정하는 것입니다. 홈스테드 가상 머신은 Vagrant의 도움으로 설정 및 관리됩니다. Vagrant는 이 URL에서 다운로드할 수 있습니다.

VirtualBox 및 Vagrant를 설정하면 다음 단계로 넘어갈 준비가 된 것입니다.

추천: 웹 개발 프로젝트에 Laravel을 선택해야 하는 5가지 이유.

2단계: 홈스테드 설치

라라벨 홈스테드 설치

먼저 설치 프로세스를 시작하려면 GitHub에서 홈스테드 소스를 복제해야 합니다. 터미널 또는 명령 프롬프트를 실행하고 다음을 입력합니다.

 git clone https://github.com/laravel/homestead.git ~/Homestead

Homestead 리포지토리는 시스템의 '~/Homestead' 폴더에 복제됩니다. 'Homestead.yaml' 구성 파일은 '~/Homestead' 디렉토리로 이동하고 'bash init.sh' 명령을 실행하여 생성해야 합니다.

 cd ~/Homestead
bash init.sh

현재 작업 디렉토리 '~/Homestead'에서 이 작업은 'Homestead.yaml' 구성 파일을 생성합니다.

3단계: 홈스테드 구성

라라벨 홈스테드 설정

'Homestead.yaml' 파일이 있으면 사양에 맞게 조정할 수 있습니다. 텍스트 편집기에서 나와 'Homestead.yaml' 파일을 로드합니다. 다음과 같은 설정 예시가 나타납니다.

 ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: VirtualBox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/code
to: /home/vagrant/code
sites:
- map: Homestead.test
to: /home/vagrant/code/Laravel/public
databases:
- Homestead
조정할 수 있는 모든 설정을 살펴보겠습니다.
  • 'ip': 홈스테드 가상 머신은 앞으로 이 IP 주소를 사용할 것입니다. 현재 IP 주소가 네트워크에서 사용 중인 경우 사용 가능한 다른 IP 주소로 변경할 수 있습니다.
  • '메모리': 홈스테드 VM에 이 정도의 RAM(MB)을 할당합니다. 컴퓨터의 하드웨어에 따라 이 설정을 조정할 수 있습니다.
  • 'cpus': 홈스테드 VM에서 사용할 수 있는 프로세서 수입니다. 컴퓨터의 기능에 따라 이 설정을 조정할 수 있습니다.
  • 'provider': 가상화 환경에서 홈스테드 가상 머신을 호스팅합니다. 1단계에서 설정한 공급자(VirtualBox)가 기본값입니다.
  • 'authorize': Homestead VM 인증에 사용될 SSH 공개 키의 위치는 아래와 같습니다.
  • 'keys': Homestead VM 인증에 사용되는 SSH 개인 키 파일을 찾아 내용을 적절한 위치에 복사합니다.
  • '폴더': 다음은 로컬 시스템과 홈스테드 가상 머신의 공유 폴더의 디렉토리 트리입니다. 'map' 옵션은 로컬 폴더의 위치를 ​​지정하고 'to' 선택은 Homestead VM에서 폴더의 위치를 ​​설정합니다.
  • 'sites': Homestead 가상 머신은 다음 웹사이트를 호스팅합니다. 'map' 옵션을 사용하여 로컬에서 사이트에 액세스하는 데 사용할 도메인 이름을 Homestead에 알리고 'to' 옵션을 사용하여 Homestead에 가상 머신에 있는 사이트의 공용 디렉터리 경로를 알려줍니다.
  • 'databases': 다음은 구현될 홈스테드 데이터베이스 스키마를 포함하는 디렉토리입니다.

필요에 맞게 설정을 조정할 수 있습니다. 예를 들어 가상 머신의 RAM을 확장하거나 새 사이트 또는 데이터베이스를 추가할 수 있습니다.

4단계: 홈스테드 시작

라라벨 홈스테드 시작하기

Homestead를 설정한 후 '~/Homestead' 폴더에서 다음 명령을 실행하여 VM을 시작할 수 있습니다.

 vagrant up

'Homestead.yaml' 파일에는 이 명령을 실행할 때 시작되고 프로비저닝될 가상 머신에 대한 구성 세부 정보가 포함되어 있습니다. 로컬 시스템의 속도와 가상 머신에서 사용할 수 있는 리소스에 따라 몇 분 정도 걸릴 수 있습니다. 가상 머신이 준비되면 다음 명령을 사용하여 로그인할 수 있습니다.

 vagrant ssh

이 명령으로 SSH 연결을 사용하여 Homestead 가상 머신에 액세스할 수 있습니다. 이 터미널을 사용하여 Laravel 앱을 관리하고 명령을 수행할 수 있습니다.

5단계: Laravel 애플리케이션에 액세스

Laravel 애플리케이션에 액세스

로컬 개발을 위해 Laravel Homestead를 위해 로컬에서 Laravel 애플리케이션에 액세스하려면 Homestead 가상 머신의 IP 주소('Homestead.yaml' 파일에 지정된 대로)를 가리키는 호스트 파일에 항목을 생성해야 합니다.

원하는 텍스트 편집기를 사용하여 호스트 파일을 엽니다. 이 파일은 /etc/hosts에서 찾을 수 있으며 Linux 및 macOS에서 실행됩니다. Windows의 C:\Windows\System32\drivers\etc\hosts에서 찾을 수 있습니다.

파일 끝에 다음 줄이 추가되어야 합니다.

 192.168.10.10 homestead.test

'Homestead.yaml' 파일의 도메인 이름 사양을 사용하여 'homestead.test'를 변경합니다. 파일을 저장한 후 텍스트 편집기를 닫습니다. 이제 모든 것이 설정되었으므로 웹 브라우저에서 'http://homestead.test'로 이동하여 Laravel 애플리케이션을 방문할 수 있어야 합니다.

모바일 앱 개발을 위해 코드 없는 개발 방식을 선택 해야 하는 10가지 이유.

6단계: Laravel 애플리케이션 개발

Laravel 애플리케이션 개발

이제 설치 및 운영이 완료된 후 프로덕션 서버에서와 마찬가지로 홈스테드에서 Laravel 애플리케이션을 정확하게 구축할 수 있습니다. 원하는 텍스트 편집기로 파일을 편집하는 동안 웹 브라우저에서 프로그램에 액세스하고 터미널에서 명령을 실행할 수 있습니다.

애플리케이션은 홈스테드 가상 머신에서 실행되기 때문에 코드를 변경하면 즉시 업데이트됩니다. Laravel Homestead 사용에 대한 추가 정보 및 조언은 다음과 같습니다.

데이터베이스 관리

Homestead가 설정되면 MySQL 서버가 생성되며 이를 사용하여 Laravel 애플리케이션용 데이터베이스를 구축하고 관리할 수 있습니다. 데이터베이스를 관리하려면 phpMyAdmin과 같은 프로그램을 사용하십시오. phpMyAdmin을 보려면 웹 브라우저에서 'http://homestead.test/phpmyadmin'으로 이동하십시오. 'Homestead.yaml' 파일의 사용자 이름과 비밀번호를 사용하여 로그인합니다.

여러 사이트 사용

Homestead.yaml 파일의 사이트 부분에 더 많은 항목을 추가하면 홈스테드가 여러 영역에 서비스를 제공하도록 설정할 수 있습니다. 홈스테드 가상 머신의 각 위치에는 별도의 도메인 이름과 함께 제공되는 디렉토리가 있어야 합니다. 다음 항목이 '홈스테드'의 사이트 섹션에 추가됩니다. yaml' 파일을 사용하여 도메인 이름이 'example.com'인 두 번째 사이트를 만듭니다. 예를 들면 다음과 같습니다.

 - map: example.com
to: /home/vagrant/sites/example/public

Homestead 가상 머신에서 '/home/vagrant/sites/example' 디렉토리를 생성하고 Laravel 애플리케이션 파일을 'public' 디렉토리로 전송합니다. 변경 사항을 적용하려면 'Homestead.yaml' 파일을 변경한 후 'vagrant reload —provision' 명령을 실행해야 합니다.

Xdebug 구성

Xdebug PHP 확장을 사용하여 PHP 코드를 디버그할 수 있습니다. 홈스테드에 이미 사전 설치되어 있지만 Xdebug는 기본적으로 켜져 있지 않습니다. 'Homestead.yaml' 파일에 다음 줄을 추가하여 Xdebug를 활성화합니다.

 sites:
- map: Homestead.test
to: /home/vagrant/code/laravel/public
xdebug: true

'Homestead.yaml' 파일을 변경한 후 'vagrant reload —provision' 명령을 실행하여 적용합니다. Xdebug가 활성화된 경우 Visual Studio Code와 같은 PHP 디버거로 Laravel 애플리케이션을 디버깅할 수 있습니다.

로컬 시스템과 파일 공유

로컬 컴퓨터와 홈스테드 가상 머신의 파일은 'vagrant rsync-auto' 명령을 사용하여 자동으로 동기화될 수 있습니다. 이것은 홈스테드 가상 머신에서 프로그램을 실행하는 동안 텍스트 편집기나 IDE를 사용하여 로컬 컴퓨터의 파일을 편집하려는 경우에 유용할 수 있습니다. '~/Homestead' 디렉토리로 이동하여 다음 명령을 실행하여 'vagrant rsync-auto'를 활용합니다.

 vagrant rsync-auto

이렇게 하면 백그라운드 작업이 로컬 컴퓨터와 홈스테드 가상 머신 간에 수정된 파일을 자동으로 동기화합니다.

가상 머신 구성 사용자 지정

'~/Homestead' 디렉토리에 있는 'Vagrantfile' 파일을 변경하면 Homestead 가상 머신 구성 방식을 변경할 수 있습니다. 예를 들어 'Vagrantfile'에 다음 줄을 포함하면 가상 머신에 할당된 RAM의 양을 늘릴 수 있습니다.

 config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
End

'Vagrantfile'을 수정한 후 변경 사항을 적용하려면 'vagrant reload —provision' 명령을 사용해야 합니다.

당신은 또한 다음을 좋아할 것입니다: Laravel이 전자 상거래 개발에 신뢰할 수 있는지 알아보십시오.

결론

결론

로컬 개발을 위한 Laravel Homestead 설정이 완료되었습니다. 이 단계에 따라 Laravel 앱을 위한 완성되고 사용 가능한 개발 환경을 신속하게 만들 수 있습니다. Homestead와 함께 프로덕션에 사용되는 설정과 유사한 설정에서 애플리케이션을 생성하고 테스트할 수 있으므로 프로덕션에서 문제가 발생하기 전에 문제를 보다 간단하게 식별하고 해결할 수 있습니다. 라라벨 앱의 로컬 개발을 위한 라라벨 홈스테드는 강력한 도구입니다.

이 문서에 설명된 절차에 따라 프로덕션 환경과 매우 유사한 포괄적인 개발 환경을 신속하게 구축할 수 있습니다. 사용 후 의도한 대로 작동한다는 것을 알기 때문에 Homestead로 자신 있게 앱을 만들고 테스트할 수 있습니다.

저자: 아트만 라토드

이 기사는 Atman Rathod가 작성했습니다. Atman은 CMARIX TechnoLabs Pvt의 공동 설립자입니다. Ltd.는 14년 이상의 경험을 가진 선도적인 웹 및 모바일 앱 개발 회사입니다. 그는 기술, 신생 기업, 기업가 정신 및 비즈니스에 대해 글을 쓰는 것을 좋아합니다. 그의 창의적인 능력, 학문적 실적 및 리더십 기술은 그를 업계의 주요 영향력 있는 인물로 만들었습니다.