Skip to content

2.1장: Laravel 환경 설정

학습 시간: 1-2시간

1. 로컬 환경이 필요한 이유는?

우주 탐사선을 만든다고 상상해 보세요. 우주로 발사하기 전에 모든 시스템을 지구에서 테스트합니다. 로컬 환경은 코드의 "제어 연구실"입니다:

  • 운영 서버에 영향을 주지 않는 안전한 실험
  • 빠른 의존성 배포
  • 소프트웨어 버전 간 쉬운 전환

💡 우주 비유: Herd = 모바일 발사대 Docker = 우주 정거장 훈련 시뮬레이터 XAMPP = 고정식 테스트 스탠드


2. Herd 설치

Herd는 PHP 환경을 관리하는 현대적인 도구입니다 (Laravel Valet과 유사).

설치 단계:

  1. 설치 프로그램 다운로드: herd.laravel.com
  2. Herd Installer.exe 실행 → 다음(Next) → 설치(Install)
  3. 설치 후:
    • 시작 메뉴에서 Herd를 엽니다. 애플리케이션 아이콘이 시스템 트레이(시계 옆)에 나타납니다.
    • Herd 아이콘을 클릭합니다: Nginx와 필요한 PHP 버전 (예: 8.3)이 실행 중인지 (녹색 점으로 표시) 확인합니다.
    • Herd 경로로 이동하여 프로젝트가 저장될 폴더를 추가합니다 (예: C:\Users\YourUser\Code). Herd는 이 폴더 내의 각 하위 디렉토리에 대해 폴더-이름.test와 같은 예쁜 도메인을 자동으로 생성합니다.

⚠️ 중요! 설치 시: - 네트워크 액세스를 허용합니다 (방화벽에서 요청할 경우) - PATH 경로 확인: C:\Program Files\Herd\bin

작동 확인:

  1. 시스템 트레이에 있는 Herd 아이콘을 클릭합니다.
  2. Nginx 및 PHP 서비스가 활성 상태인지 (녹색 표시기) 확인합니다.
  3. 프로젝트 폴더 (예: C:\Users\YourUser\Code)에 test 폴더를 만들고, 그 안에 <?php phpinfo(); ?> 내용을 가진 index.php 파일을 생성합니다.
  4. Herd에서 sites 탭을 통해 test 폴더의 경로를 지정하고 "Add site"를 클릭합니다.
  5. 브라우저에서 http://test.test 주소를 엽니다. PHP 정보 페이지가 표시되어야 합니다.

3. 대체 방법 (요약)

도구 대상 장점 단점
Laravel Sail (Docker) 모든 수준의 사용자 완전한 격리, 환경 재현성, Laravel 공식 지원 Docker 설치 필요, 더 많은 리소스 소모
XAMPP 초보자 올인원 설치 프로그램 복잡성, 소프트웨어 버전 관리 어려움, 시스템 오염
Laragon Windows 개발자 빠르고, 버전 전환 용이, 호스트 자동 설정 새 프로젝트 추가 시 웹 서버 수동 재시작 필요

Docker 예시 (Laravel Sail):

# Docker 설치 후
./vendor/bin/sail up


4. PHP 및 Composer 설치

Herd를 사용하지 않는 경우:

  1. PHP:
    • Windows용 PHP 8.3 다운로드
    • C:\PHP에 압축 해제
    • PATH에 추가:
      # 관리자 권한으로 PowerShell에서 실행하는 것을 권장합니다.
      [Environment]::SetEnvironmentVariable("Path", "$env:Path;C:\PHP", "User")
      
  2. Composer:

5. PostgreSQL 설치

데이터베이스 작업용:

  1. PostgreSQL 15 다운로드
  2. 설치 프로그램 실행:
  3. 슈퍼유저 비밀번호: admin (또는 본인 설정)
  4. 포트: 5432 (기본)
  5. 설치 후:
  6. pgAdmin 4 (그래픽 클라이언트) 열기

    DBeaver, DataGrip 또는 명령줄과 같은 다른 데이터베이스 클라이언트를 사용할 수도 있습니다. 저는 DBeaver를 선호하지만, 이것은 취향의 문제입니다.

  7. 프로젝트용 데이터베이스 생성: space_api

6. Laravel 설치

  1. Composer를 통해:

    composer create-project laravel/laravel space-api
    cd space-api
    

  2. Git 초기화 (선택 사항):

    git init
    git add .
    git commit -m "우주 프로젝트 시작"
    

  3. 서버 실행 및 확인:

    Herd를 사용하는 경우: space-api 프로젝트가 Herd에 추가한 폴더에 있는지 확인합니다. 브라우저에서 다음 주소를 엽니다: http://space-api.test Laravel 시작 페이지가 표시되어야 합니다. Herd 덕분에 서버가 이미 실행 중입니다!

Herd를 사용하지 않는 경우 (수동 설치):

php artisan serve
브라우저에서 다음을 엽니다: http://localhost:8000 → Laravel 시작 페이지가 나타나야 합니다!

Herd에서 프로젝트 생성 시:

화면의 지시를 따르세요. 편의를 위해 프로젝트 이름은 space-api로 하겠습니다. 스타터 키트는 아무거나 상관없지만, 저는 React를 선호합니다.

phpunit을 반드시 포함하세요 - 나중에 필요할 것입니다

7. 프로젝트 설정

중요 파일:

  • .env — 환경 설정 (키, 데이터베이스)
  • config/database.php — DBMS 구성
  • composer.json — PHP 의존성

프로젝트에 DB 연결:

.env에 다음을 추가합니다:

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=space_api
DB_USERNAME=postgres # postgres 로그인
DB_PASSWORD=admin # postgres 비밀번호

첫 Artisan 명령어:

php artisan key:generate  # 애플리케이션 키 생성
php artisan migrate:fresh # 데이터베이스 마이그레이션 (postgres로 전환 시)


복습 퀴즈

1. Herd는...

2. Laravel이 PHP 의존성을 관리하기 위해 사용하는 도구는?

3. PostgreSQL의 기본 포트:

4. Composer를 통해 Laravel 프로젝트를 생성하는 명령어:

5. 환경 설정 파일은?


🚀 챕터 마무리

당신은 우주 API를 위한 "런치 패드"를 배포했습니다! 이제 다음을 가집니다:

  • 🛠️ PHP 및 Nginx와 함께하는 로컬 환경 (Herd 또는 수동 설치)
  • 🐘 설치된 PostgreSQL 데이터베이스 서버
  • 🚀 Laravel 프로젝트 space-api
  • 🔌 설정된 데이터베이스 연결

📌 확인:

  • Herd를 사용하는 경우: http://space-api.test 주소로 웹사이트가 열리는지 확인하십시오.
  • Herd를 사용하지 않는 경우: php artisan serve 명령이 작동하고 http://localhost:8000 주소로 웹사이트가 열리는지 확인하십시오.
  • 어떤 경우든, pgAdmin 4에서 생성된 space_api 데이터베이스가 보이는지 확인하십시오.

```