2.1장: Laravel 환경 설정
학습 시간: 1-2시간
1. 로컬 환경이 필요한 이유는?
우주 탐사선을 만든다고 상상해 보세요. 우주로 발사하기 전에 모든 시스템을 지구에서 테스트합니다. 로컬 환경은 코드의 "제어 연구실"입니다:
- 운영 서버에 영향을 주지 않는 안전한 실험
- 빠른 의존성 배포
- 소프트웨어 버전 간 쉬운 전환
💡 우주 비유: Herd = 모바일 발사대 Docker = 우주 정거장 훈련 시뮬레이터 XAMPP = 고정식 테스트 스탠드
2. Herd 설치
Herd는 PHP 환경을 관리하는 현대적인 도구입니다 (Laravel Valet과 유사).
설치 단계:
- 설치 프로그램 다운로드: herd.laravel.com
Herd Installer.exe
실행 → 다음(Next) → 설치(Install)- 설치 후:
- 시작 메뉴에서 Herd를 엽니다. 애플리케이션 아이콘이 시스템 트레이(시계 옆)에 나타납니다.
- Herd 아이콘을 클릭합니다: Nginx와 필요한 PHP 버전 (예: 8.3)이 실행 중인지 (녹색 점으로 표시) 확인합니다.
- Herd 경로로 이동하여 프로젝트가 저장될 폴더를 추가합니다 (예: C:\Users\YourUser\Code). Herd는 이 폴더 내의 각 하위 디렉토리에 대해 폴더-이름.test와 같은 예쁜 도메인을 자동으로 생성합니다.
⚠️ 중요! 설치 시: - 네트워크 액세스를 허용합니다 (방화벽에서 요청할 경우) - PATH 경로 확인:
C:\Program Files\Herd\bin
작동 확인:
- 시스템 트레이에 있는 Herd 아이콘을 클릭합니다.
- Nginx 및 PHP 서비스가 활성 상태인지 (녹색 표시기) 확인합니다.
- 프로젝트 폴더 (예: C:\Users\YourUser\Code)에
test
폴더를 만들고, 그 안에<?php phpinfo(); ?>
내용을 가진index.php
파일을 생성합니다. - Herd에서
sites
탭을 통해test
폴더의 경로를 지정하고 "Add site"를 클릭합니다. - 브라우저에서
http://test.test
주소를 엽니다. PHP 정보 페이지가 표시되어야 합니다.
3. 대체 방법 (요약)
도구 | 대상 | 장점 | 단점 |
---|---|---|---|
Laravel Sail (Docker) | 모든 수준의 사용자 | 완전한 격리, 환경 재현성, Laravel 공식 지원 | Docker 설치 필요, 더 많은 리소스 소모 |
XAMPP | 초보자 | 올인원 설치 프로그램 | 복잡성, 소프트웨어 버전 관리 어려움, 시스템 오염 |
Laragon | Windows 개발자 | 빠르고, 버전 전환 용이, 호스트 자동 설정 | 새 프로젝트 추가 시 웹 서버 수동 재시작 필요 |
Docker 예시 (Laravel Sail):
4. PHP 및 Composer 설치
Herd를 사용하지 않는 경우:
- PHP:
- Windows용 PHP 8.3 다운로드
C:\PHP
에 압축 해제- PATH에 추가:
- Composer:
- Composer-Setup.exe 실행
- 확인:
5. PostgreSQL 설치
데이터베이스 작업용:
- PostgreSQL 15 다운로드
- 설치 프로그램 실행:
- 슈퍼유저 비밀번호:
admin
(또는 본인 설정) - 포트:
5432
(기본) - 설치 후:
- pgAdmin 4 (그래픽 클라이언트) 열기
DBeaver, DataGrip 또는 명령줄과 같은 다른 데이터베이스 클라이언트를 사용할 수도 있습니다. 저는 DBeaver를 선호하지만, 이것은 취향의 문제입니다.
- 프로젝트용 데이터베이스 생성:
space_api
6. Laravel 설치
-
Composer를 통해:
-
Git 초기화 (선택 사항):
-
서버 실행 및 확인:
Herd를 사용하는 경우: space-api 프로젝트가 Herd에 추가한 폴더에 있는지 확인합니다. 브라우저에서 다음 주소를 엽니다: http://space-api.test Laravel 시작 페이지가 표시되어야 합니다. Herd 덕분에 서버가 이미 실행 중입니다!
Herd를 사용하지 않는 경우 (수동 설치):
브라우저에서 다음을 엽니다: 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 명령어:
복습 퀴즈
🚀 챕터 마무리
당신은 우주 API를 위한 "런치 패드"를 배포했습니다! 이제 다음을 가집니다:
- 🛠️ PHP 및 Nginx와 함께하는 로컬 환경 (Herd 또는 수동 설치)
- 🐘 설치된 PostgreSQL 데이터베이스 서버
- 🚀 Laravel 프로젝트
space-api
- 🔌 설정된 데이터베이스 연결
📌 확인:
- Herd를 사용하는 경우:
http://space-api.test
주소로 웹사이트가 열리는지 확인하십시오.- Herd를 사용하지 않는 경우:
php artisan serve
명령이 작동하고http://localhost:8000
주소로 웹사이트가 열리는지 확인하십시오.- 어떤 경우든,
pgAdmin 4
에서 생성된space_api
데이터베이스가 보이는지 확인하십시오.
```