라라벨 세일은 라라벨 실행에 필요한 기본 기능(PHP, 내장 웹 서버, MySQL)과 캐시용 미들웨어인 레디스, 간단한 메일 서버인 메일혹, 그리고 셀레늄과 노드를 포함하고 있으며, 도커 이미지로도 제공된다.
docker를 설치했다는 가정하에 라라벨 세일을 설치한다.
라라벨 세일은 도커 기반으로 동작하며, sail 명령어는 내부적으로 도커 명령어를 호출한다.
sail up 명령어는 docker-compose up으로 변환하여 실행한다.
1. 라라벨 세일 다운로드
curl -s https://laravel.build/sample | bash
2. 라라벨 세일 실행
cd sample
./vendor/bin/sail up -d
그러면 http://localhost 에 접속된다.
3. 라라벨 세일 종료
./vendor/bin/sail down
* alias 등록하면 다음부터는 편하다.
alias sail="./vendor/bin/sail"
4. 컨테이너 실행 및 종료 방법
./vendor/bin/sail up
./vendor/bin/sail up -d # 백그라운드 실행
./vendor/bin/sail down # 종료
5. 컨테이너 접속
sail shell
6. 컨테이너 목록 표시
sail ps
7. mysql 접속
sail mysql
8. 테스트 코드 작성
sail artisan make:test HomeTest
참고로, * docker is not running
오류가 발생한다면, 스택오버플로우에서는 여기 문서를 추천해주는데
- https://docs.docker.com/engine/install/linux-postinstall/
sudo groupadd docker
sudo usermod -aG docker $USER
슬프게도 맥에서는 command가 없다고 실행이 안된다.
sudo: groupadd: command not found
그래서 좀더 찾아본 결과 다음과 같음 명령어를 실행하면 된다.
sudo dseditgroup -o create docker
sudo dscl . append /Groups/docker GroupMembership $USE
🌟 근데 중요한 점은 이 명령어를 실행하고 한 번 터미널을 껐다가 켜야 한다. 안그러면 오류가 발생한다.
📍 sail 관련 공식 한글 번역 문서
https://laravel.kr/docs/8.x/sail
📚 아래 책 1-2장을 읽고 정리한 글입니다.
http://www.yes24.com/Product/Goods/105772857
'개발 > laravel' 카테고리의 다른 글
php. $this와 self의 차이점 (0) | 2023.02.16 |
---|---|
laravel. validator 문서 및 커스터마이징 (0) | 2022.06.27 |
laravel. array 에 추가 하는 방법 (0) | 2022.06.21 |
laravel. 현재시간 milliseconds로 구하기 (0) | 2022.06.14 |
laravel. 이미지 width, size 구하기 (0) | 2022.06.14 |